不能选择一个数据框列

问题描述 投票:0回答:1

我试图使用sort_values()函数从数据框中选取一列,但它没有按照我的期望工作。让我用代码告诉你。

identity = pd.read_csv(r"demographic_info.csv", skipinitialspace=True)
eeg = pd.read_csv(r"EEG_data.csv", skipinitialspace=True)

identity.columns

identity = identity.rename(columns={' age': 'age',
                        ' ethnicity': 'ethnicity' ,
                       ' gender': 'gender'})

identity.sort_values(by = 'gender', inplace=True, axis = 1)

我看到列中有隐藏的空白,我用两种方法解决了这个问题。虽然它在每一种方法中都给出了相同的错误。

Traceback (most recent call last):

  File "<ipython-input-8-f8783f09d99b>", line 15, in <module>
    identity.sort_values(by = 'gender', inplace=True, axis = 1)

  File "C:\Users\user\Anaconda3\lib\site-packages\pandas\core\frame.py", line 4993, in 
    sort_values
    k = self._get_label_or_level_values(by, axis=axis)

  File "C:\Users\user\Anaconda3\lib\site-packages\pandas\core\generic.py", line 1774, in 
    _get_label_or_level_values
    raise KeyError(key)

KeyError: 'gender'
python pandas dataframe sorting keyerror
1个回答
0
投票

你应该用axis=0排序,而不是axis=1。

identity.sort_values(by = 'gender', inplace=True, axis = 0)

© www.soinside.com 2019 - 2024. All rights reserved.