2017-09-01 14 views
0

私のデータフレームには2014-11-12のような日付の列があります。 私は2つの列に分割したい:「Month_date]列の[年]列 'と11月12日にとしてMonth_dateとput年。 I have split Date column but not able to put in 'Nov 12' format。私はPythonの初心者です。どんな助力も高く評価されます。文字列の日付と時刻を変換し、年と月の2つの列に分割したい

+0

、および辞書のlike' {1構築: '月'、2: '2月' を...} 'athen using' map' – Wen

+0

これは、ここで繰り返し質問と答えがあります:https://stackoverflow.com/questions/6557553/get-month-name-from-number ...あなたのコードのいくつかを提供しています...あなたが私の考えを尋ねるなら、私は知っている限り2つのオプションがあります:**(1)**月の完全な名前を使用します。 '.strftime( '%B')'を使用してください。 **(2)**略語を使用してください。この場合、配列を使用して独自のシステムを作成する必要があります。基本的には、あなたの月の数字は、略語を含む配列のインデックスに対応しています(これはかなり基本的ですが、わからない場合は質問してください) –

+3

お願い...データをここに貼り付けるのはどれくらい難しいですか?人々があなたの質問に答えることを本当に困難にしたいのですか? –

答えて

1

私はあなたが必要だと思う:

`df.Date.dt.month`を使用して
df['Date'] = pd.to_datetime(df['Date']) 
df['Year'] = df['Date'].dt.year 
df['Month-Date'] = df['Date'].dt.strftime('%m-%d') 
print (df) 
      ID  Date Data_Value Year Month-Date 
0 USW00094889 2014-11-12   22 2014  11-12 
1 USC00208972 2009-04-29   56 2009  04-29 
2 USC00200032 2008-05-26   278 2008  05-26 
3 USC00205563 2005-11-11   139 2005  11-11 
4 USC00200230 2014-02-27  -106 2014  02-27 
5 USW00014833 2010-10-01   194 2010  10-01 
6 USC00207308 2010-06-29   144 2010  06-29 

df['Date'] = pd.to_datetime(df['Date']) 
df['Year'] = df['Date'].dt.year 
df['Month-Date'] = df['Date'].dt.strftime('%b-%d') 
print (df) 
      ID  Date Data_Value Year Month-Date 
0 USW00094889 2014-11-12   22 2014  Nov-12 
1 USC00208972 2009-04-29   56 2009  Apr-29 
2 USC00200032 2008-05-26   278 2008  May-26 
3 USC00205563 2005-11-11   139 2005  Nov-11 
4 USC00200230 2014-02-27  -106 2014  Feb-27 
5 USW00014833 2010-10-01   194 2010  Oct-01 
6 USC00207308 2010-06-29   144 2010  Jun-29 
+0

ワウはうまくいった!あなたをThnak! – Dhanu

+0

本当ですか?ダウンボツクスは本当に悪い答えを意味します。ではなぜそれが受け入れられたのですか? – jezrael

+0

あなたの答えは完璧です、もう一度ありがとう – Dhanu

関連する問題