Изменить дату во всех строках DataFrame - PullRequest
1 голос
/ 24 марта 2020

У меня есть образец DataFrame: я хотел бы заменить все даты на '2012-04-28'

In[101]: sample_df
Out[398]: 
  Var       dates
0   A  2012-04-22
1   B  2012-04-22
2   C  2012-04-22
3   D  2012-04-22

Я попробовал следующее и выдает ошибку:

In[102]: sample_df.date.replace('2012-04-22','2012-04-28',inplace=True)

C:\Users\WorkStation\Anaconda3\lib\site-packages\pandas\core\generic.py:6746: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  self._update_inplace(new_data)

Любые предложения, пожалуйста.

Ответы [ 3 ]

1 голос
/ 24 марта 2020

Надеюсь, это поможет.

df['Dates']=df.Dates.astype(str).replace('2012-04-22','2012-04-28') 
0 голосов
/ 24 марта 2020

еще проще. Вы можете присвоить значение, и оно будет применяться ко всем столбцам.

sample_df.dates = '2012-04-28'

Кроме того: В вашем примере в столбце с данными отображается «даты» с символом S. Но в вашем примере кода у вас есть «дата» в единственном числе. .

0 голосов
/ 24 марта 2020
sample_df.loc[sample_df['dates'].eq('2012-04-22'), 'dates'] = '2012-04-28'

Это должно работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...