#python #pandas #dataframe
Необходимо отобразить в таблице значение 'ab' в столбце 'Type', и поделить в них
цену на 1000, и сохранить в новый DataFrame.
Реализованный код:
df = pd.read_excel('book.xlsx', index_col=None)
df_1 = df[df['Type']=='ab']
df_1.loc['Price'] = df_1.loc['Price']/1000'
Но получаю ошибку:
the label [Price] is not in the [index]
Kак решить проблему?
Исходник залил на dropmefiles.
Ответы
Ответ 1
In [270]: df2 = df[df['Type']=='ab'].copy() In [271]: df2 Out[271]: Type Price markus ab 6444 vision ab 8899 In [272]: df2['Price'] /= 1000 In [273]: df2 Out[273]: Type Price markus ab 6.444 vision ab 8.899 чтобы изменить строки по условию в исходном DataFrame: In [275]: df.loc[df['Type']=='ab', 'Price'] /= 1000 In [276]: df Out[276]: Type Price Avito fd 8045.000 OLX bb 5554.000 stada bb 4566.000 markus ab 6.444 vision ab 8.899
Комментариев нет:
Отправить комментарий