pandas空列怎么从3开始递增赋值?

pandas空列怎么从3开始递增赋值?

加了一个空列后,需要加一个列从上往下赋值3,4,5,6……
用index.tolist()后只能从0开始,但这个需要从3开始,怎么处理呢?

map(lambda x: x + 3, index.tolist()) 就是了。

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 这篇博客: python pandas 读取列名以及index中的 df.columns返回一个index,用tolist()返回一个list 部分也许能够解决你的问题。
  • 以下回答由chatgpt基于相关博客总结生成:
    import pandas as pd
    
    # 1. 创建一个空的DataFrame并添加一列
    df = pd.DataFrame()
    df['numbers'] = None
    
    # 2. 获取空列的索引
    index = df.index[df['numbers'].isnull()]
    
    # 3. 生成从3开始递增的数列
    numbers = range(3, 3+len(index))
    
    # 4. 将递增数列赋值给空列
    df.loc[index, 'numbers'] = numbers
    
    df
    

    这段代码的思路如下:

    1. 首先创建一个空的DataFrame,并添加一个名为"numbers"的空列。

    2. 使用 df['numbers'].isnull() 找到空列的索引,即空值对应的行号。

    3. 使用 range(3, 3+len(index)) 生成从3开始递增的数列,其中 len(index) 表示空列的长度。

    4. 使用 df.loc[index, 'numbers] 将递增数列赋值给空列。

    最终,df 将会是一个包含从3开始递增的数的DataFrame。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^