在 pandas 中向数据框添加行

Adding row to dataframe in pandas

假设我正在尝试将行添加到具有 40 列的数据框中。通常它会是这样的:

df = pandas.DataFrame(columns = 'row1', 'row2', ... ,'row40'))

df.loc[0] = [value1, value2, ..., value40]

(不要按字面理解点)

但是假设 value1 到 value10 在 list1 中(即 list1 = [value1, value2, ..., value10]),所有剩余的值都是单独的元素。

我试过了:

df.loc[0] = [list1, value11, value12, ..., value40]

但它不起作用,因为 Python 将整个列表解释为一个元素。所以这是错误的维度。我怎样才能重写代码以使其工作?

我认为你需要:

df.loc[0] = list1 + [value11, value12, ..., value40]

样本:

df = pd.DataFrame(columns = ['row1', 'row2','row3', 'row4','row5', 'row6','row40'])

list1 =  ['a','b','c']
df.loc[0] = list1 + ['d','e','f', 'g']
print (df)
  row1 row2 row3 row4 row5 row6 row40
0    a    b    c    d    e    f     g