将具有一列的数据追加到现有的datafram

2024-06-26 16:57:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我想将数据列表附加到一个数据帧中,这样该列表将出现在列中,即:

#Existing dataframe:
[A, 20150901, 20150902
 1  4  5
 4  2  7]

#list of data to append to column A:
data = [8,9,4]

#Required dataframe
[A, 20150901, 20150902
 1  4  5
 4  2  7
 8, 0  0
 9  0  0
 4  0  0]

我正在使用以下内容:

^{pr2}$

但在循环中执行此操作效率低下,而且我得到以下警告:

Passing list-likes to .loc or [] with any missing label will raise
KeyError in the future, you can use .reindex() as an alternative.

关于如何克服这个错误并一次性附加2个数据帧有什么想法吗?在


Tags: ofto数据警告dataframe列表datarequired
3条回答

也许你可以这样做:

new = pd.DataFrame(np.zeros((3, 3))) #Create a new zero dataframe:
new[0]=[8,9,4] #add values
existed_dataframe.append(new) #and merge both dataframes

我想,你可以这样做。在

df = pd.DataFrame([[1, 2], [3, 4]], columns=list('AB'))
df2 = pd.DataFrame({'A':[8,9,4]})
df.append(df2).fillna(0)

    A    B
0   1   2.0
1   3   4.0
0   8   0.0
1   9   0.0
2   4   0.0

我认为需要^{}新的数据帧,列为A,那么^{}如果想要相同的列顺序,最后用^{}替换缺失的值:

data = [8,9,4]
df_new = pd.DataFrame({'A':data})

df = (pd.concat([df, df_new], ignore_index=True)
        .reindex(columns=df.columns)
        .fillna(0, downcast='infer'))
print (df)
   A  20150901  20150902
0  1         4         5
1  4         2         7
2  8         0         0
3  9         0         0
4  4         0         0

相关问题 更多 >