问题:将列添加到具有恒定值的数据框
我有一个现有的数据框,我需要添加一个额外的列,每行将包含相同的值。
现有的df:
Date, Open, High, Low, Close
01-01-2015, 565, 600, 400, 450新的df:
Name, Date, Open, High, Low, Close
abc, 01-01-2015, 565, 600, 400, 450我知道如何追加现有的series / dataframe列。但这是另一种情况,因为我所需要的只是添加“名称”列,并将每一行设置为相同的值,在本例中为“ abc”。
回答 0
df['Name']='abc' 将添加新列并将所有行设置为该值:
In [79]:
df
Out[79]:
         Date, Open, High,  Low,  Close
0  01-01-2015,  565,  600,  400,    450
In [80]:
df['Name'] = 'abc'
df
Out[80]:
         Date, Open, High,  Low,  Close Name
0  01-01-2015,  565,  600,  400,    450  abc回答 1
您可以使用insert指定要在何处添加新列。在这种情况下,我通常0将新列放在左侧。
df.insert(0, 'Name', 'abc')
  Name        Date  Open  High  Low  Close
0  abc  01-01-2015   565   600  400    450回答 2
单班轮工程
df['Name'] = 'abc'创建一Name列并将所有行设置为abcvalue
回答 3
总结其他人的建议,并添加第三种方法
您可以:
- 
df.assign(Name='abc')
- 访问新的列系列(将被创建)并进行设置: - df['Name'] = 'abc'
- 插入(位置,列,值,allow_duplicates = False) - df.insert(0, 'Name', 'abc')- 参数loc(0 <= loc <= len(columns))允许您在所需的位置插入列。 - “禄”为您提供了索引你的列将在插入后。例如,上面的代码将Name列插入第0列,即它将插入到第一列之前,成为新的第一列。(索引从0开始)。 
所有这些方法都允许您从系列中添加新列(只需将上面的’abc’默认参数替换为系列)。
	声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

