Измените столбец dataframe с текста на числа в pandas dataframe - PullRequest
0 голосов
/ 03 апреля 2020

Используя pandas, у меня есть блок данных, который описывает некоторые данные об озоне

ozone_data = pd.read_csv('https://www.dropbox.com/s/0s9ui4h90j7xaxg/Dataset_ozone.csv?dl=1', sep=';')

В этом наборе данных у меня есть столбец с именем "plu ie". Он описывает «Se c» или «Plu ie».

Я хочу изменить значение этого столбца со строки «Se c» на число 2 и строку 'Plu ie' на номер 1

Я не знаю, что делать, Может ли кто-нибудь мне помочь?

Ответы [ 2 ]

0 голосов
/ 03 апреля 2020

Используйте pandas.Series.apply с лямбдой:

ozone_data['pluie'] = ozone_data['pluie'].apply(lambda x: 1 if x == 'Pluie' else 2)

или используйте numpy.where

df['pluie'] = np.where(df['pluie'] == 'Pluie', 1,2)

Есть еще несколько способов добиться того же результата.

0 голосов
/ 03 апреля 2020

Самый простой способ - создать словарь сопоставлений со строковым значением в качестве ключа и числом в качестве значения. Затем вызовите pd.replace () для рассматриваемого столбца и передайте словарь в качестве аргумента.

EX:

map_dict = {"Sec": 2, "Pluie":1}
ozone_Data['pluie'].replace(map_dict, inplace=True)

Самое большое преимущество - это возможность создания сопоставления для любой суммы. ценностей.

...