我正在努力理解列命名约定背后的概念,因为以下创建新列的尝试之一似乎失败了:
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
Run Code Online (Sandbox Code Playgroud)
给出以下结果:
然而,如果我试图通过替换以下行来创建列b,则没有错误消息,但数据帧df仅保留列a和c.
df.b = 10*df.a ### rather than the previous df['b'] = 10*df.a ###
Run Code Online (Sandbox Code Playgroud)
大熊猫做了什么,为什么我的命令不正确?