Страницы

Поиск по вопросам

четверг, 9 января 2020 г.

Изменить значения в DataFrame по условию

#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

Комментариев нет:

Отправить комментарий