pandas空列怎么从3开始递增赋值?
加了一个空列后,需要加一个列从上往下赋值3,4,5,6……
用index.tolist()后只能从0开始,但这个需要从3开始,怎么处理呢?
map(lambda x: x + 3, index.tolist()) 就是了。
不知道你这个问题是否已经解决, 如果还没有解决的话: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
这段代码的思路如下:
首先创建一个空的DataFrame,并添加一个名为"numbers"的空列。
使用 df['numbers'].isnull()
找到空列的索引,即空值对应的行号。
使用 range(3, 3+len(index))
生成从3开始递增的数列,其中 len(index)
表示空列的长度。
使用 df.loc[index, 'numbers]
将递增数列赋值给空列。
最终,df
将会是一个包含从3开始递增的数的DataFrame。