Answers:
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
.copy()
之前使用获取数据框的副本(除非它很大,或者真正重要的是性能)。
您可以使用insert
指定要在何处添加新列。在这种情况下,我通常0
将新列放在左侧。
df.insert(0, 'Name', 'abc')
Name Date Open High Low Close
0 abc 01-01-2015 565 600 400 450
df.insert(0,'coef_fix',1)
。我正在将JupyterLab与Python 3.0配合使用
insert
操作inplace
。这意味着不会返回新数据帧的值,但是原始数据帧已被修改。试试这个df = pd.DataFrame(0, range(1460), range(41)); df.insert(0, 'coef_fix', 1); df
总结其他人的建议,并添加第三种方法
您可以:
df.assign(Name='abc')
访问新的列系列(将被创建)并进行设置:
df['Name'] = 'abc'
插入(位置,列,值,allow_duplicates = False)
df.insert(0, 'Name', 'abc')
参数loc(0 <= loc <= len(columns))允许您在所需的位置插入列。
“禄”为您提供了索引你的列将在插入后。例如,上面的代码将Name列插入第0列,即它将插入到第一列之前,成为新的第一列。(索引从0开始)。
所有这些方法都允许您从系列中添加新列(只需将上面的'abc'默认参数替换为系列)。