如何将值添加到熊猫数据框中的新列?

新手上路,请多包涵

我想在 Pandas 数据框中创建一个新的命名列,将第一个值插入其中,然后将另一个值添加到同一列:

就像是:

 import pandas

df = pandas.DataFrame()
df['New column'].append('a')
df['New column'].append('b')
df['New column'].append('c')

etc.

我怎么做?

原文由 barciewicz 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 361
2 个回答

不要这样做, 因为它很慢

  1. 一次更新一个空帧 a-single-row-at-time 。我已经看到这种方法用得太多了。这是迄今为止最慢的。这可能是常见的地方(对于某些 python 结构来说相当快),但是 DataFrame 对索引进行了大量检查,因此一次更新一行总是非常慢。创建新结构和连接要好得多。

最好创建数据列表并通过构造函数创建 DataFrame

 vals = ['a','b','c']

df = pandas.DataFrame({'New column':vals})

原文由 jezrael 发布,翻译遵循 CC BY-SA 4.0 许可协议

如果我理解正确,您想将一个值附加到 pandas 数据框中的现有列。问题是对于 DF,您需要保持类似矩阵的形状,以便每列的行数相等,您可以做的是添加一个具有默认值的列,然后使用更新此值

for index, row in df.iterrows():
     df.at[index, 'new_column'] = new_value

原文由 amo3tasem 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题