首页 > 解决方案 > 'DataFrame' 对象没有属性 'Hight'

问题描述

我正在尝试使用一些数据,所以我更改了行的名称

df.重命名

我得到了正确的结果,但是当我尝试使用新行的名称时,我得到了这个名称

DataFrame' 对象没有属性 'Hight'

这是我的代码:

x=data['Time Series (Daily)']
df = pd.DataFrame(x)
df=df.rename(index={'2. high':'Hight','3. low':'Low'})
df['h+l']=df.Hight + df.Low

标签: pythonpandasdataframe

解决方案


你可以使用这个:

df = df.rename(index={'2. high':'Hight','3. low':'Low'})
df.loc['h+l'] = df.loc['Hight'] + df.loc['Low']

示例输入:

                a         b
2. high  0.007900  0.000021
3. low   0.010771  0.000033

输出:

              a         b
Hight  0.007900  0.000021
Low    0.010771  0.000033
h+l    0.018671  0.000054

相反,如果您使用columns,那么您可以这样做:

输入:

    2. high    3. low
0  0.007900  0.000021
1  0.010771  0.000033

df = df.rename(columns={'2. high':'Hight','3. low':'Low'})
df['h+l'] = df['Hight'] + df['Low']

输出:

      Hight       Low       h+l
0  0.007900  0.000021  0.007921
1  0.010771  0.000033  0.010803

推荐阅读