Изменить одну ячейку в python кадре данных - PullRequest
0 голосов
/ 18 апреля 2020

У меня есть python фрейм данных, в котором столбец называется Country; в этой колонке, в определенной строке (я не знаю, какая), ячейка содержит имя Италия . В том же столбце, в другом ряду (я не знаю, где) ячейка содержит имя Сан-Марино . Я хочу просто изменить имя Сан-Марино на имя Италия (чтобы у меня было два Италия в столбце Country).

Это, безусловно, базовый c вопрос, но, ну, я не знаю, как сделать эту простую вещь в Python ... Не могли бы вы помочь мне с кодом для использования?

Ответы [ 3 ]

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

Предполагая, что это pandas.DataFrame и ваш DataFrame называется df, вы можете использовать

df.loc[df['Country'] == 'San Marino', 'Country'] = 'Italy'

Пример:

>>> df = pd.DataFrame({'Country': ['Italy', 'Norway', 'San Marino']})
>>> print(df)
      Country
0       Italy
1      Norway
2  San Marino

>>> df.loc[df['Country'] == 'San Marino', 'Country'] = 'Italy'
>>> print(df)
  Country
0   Italy
1  Norway
2   Italy
0 голосов
/ 18 апреля 2020
df["Country"][df.Country == 'San Marino'] = 'Italy'
0 голосов
/ 18 апреля 2020

Вы можете использовать Series.str.replace для замены вхождений San Marino на Italy.

Использование:

df["Country"] = df["Country"].str.replace("San Marino", "Italy")

Для создания копии оригинала df:

df_copy = df.copy()
df_copy["Country"] = df_copy["Country"].str.replace("San Marino", "Italy")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...