【发布时间】:2016-04-28 20:00:04
【问题描述】:
鉴于以下创建新列的尝试之一似乎失败,我很难理解列命名约定背后的概念:
from numpy.random import randn
import pandas as pd
df = pd.DataFrame({'a':range(0,10,2), 'c':range(0,1000,200)},
columns=list('ac'))
df['b'] = 10*df.a
df
给出以下结果:
但是,如果我尝试通过替换以下行来创建 b 列,则不会出现错误消息,但数据框 df 仅保留 a 和 c 列。
df.b = 10*df.a ### rather than the previous df['b'] = 10*df.a ###
pandas 做了什么,为什么我的命令不正确?
【问题讨论】:
-
如果 b 列已经存在,则 df.b = 10*df.a 有效!
标签: python pandas columnname