Je suis sûr que cela a été demandé avant, mais je ne trouve pas la bonne façon de faire cela. J'ai un fichier de données avec un index DateTime Ce que je voudrais faire est d'accéder (et de créer une nouvelle colonne de) la propriété du mois de l'index DateTime. J'ai essayé de simplement accéder à la propriété à l'aide d'un imprimé Toute aide est grandement appréciée, et merci d'avance. p> p> (df ["test"]. DateTime.month) code> Mais je reçois le KeyError attendu (je sais que le titre du Dataframe est "Test" et non L'index lui-même, je ne sais tout simplement pas quoi faire). P>
3 Réponses :
Comme ça?
df['month_s'] = [str(mnth).zfill(2) for mnth in pd.to_datetime(df.index).month]
df
Out[3]:
col2 month month_s
04-05-2018 56 4 04
04-06-2018 23 4 04
11-07-2018 87 4 04
04-08-2018 11 4 04
Fondamentalement oui! J'essayais juste de garder le premier zéro pour le mois - est-ce possible?
J'espère que c'est ce que vous recherchez:
import pandas as pd
data = [['04-05-2018',56] ,
['04-06-2018',23],
['04-07-2018',87],
['04-08-2018',11]]
df = pd.DataFrame(data, columns =['test', 'col2'])
df.set_index('test', inplace=True)
df['MONTH'] = pd.to_datetime(df.index).month
df
col2 Month
test
04-05-2018 56 4
04-06-2018 23 4
04-07-2018 87 4
04-08-2018 11 4
import pandas as pd
data = [['04-05-2018',56] ,
['04-06-2018',23],
['04-07-2018',87],
['04-08-2018',11]]
df = pd.DataFrame(data, columns =['test', 'col2'])
df.set_index('test', inplace=True)
df
col2
test
04-05-2018 56
04-06-2018 23
04-07-2018 87
04-08-2018 11
df=dfT.reset_index()
df['Months'] = list(dfT['test'].astype(str).str[3:5])
df
col2 Months
test
04-05-2018 56 05
04-06-2018 23 06
04-07-2018 87 07
04-08-2018 11 08
Done â
â
Vous pouvez accéder à l'index sous forme de colonne après avoir appelé
df.reeset_index () code> ou l'index directement avecdf.index code>df.index.month code> oudf.reeset_index () ['"test']. DT.Month code>.Merci les deux, je ne savais pas que je pourrais le faire de cette façon! @Quanghoang La première solution est ce que je cherche comme je voudrais le garder comme l'index