Python格式数据帧索引

Python格式数据帧索引,python,dataframe,formatting,Python,Dataframe,Formatting,我的原始df.index是yyyy-mm-dd格式(不是日期时间数据类型,而是str)。如何将其格式化为ddmmmyyyy df1 = pd.DataFrame(index=['2017-01-01', '2017-02-01', '2017-03-01'], columns=["A", "B", "C"], data=[[5,np.nan, "ok"], [7,8,"fine"], ["3rd",100,np.nan]]) df1 我需要的结果是

我的原始df.index是yyyy-mm-dd格式(不是日期时间数据类型,而是str)。如何将其格式化为ddmmmyyyy

df1 = pd.DataFrame(index=['2017-01-01', '2017-02-01', '2017-03-01'], 
          columns=["A", "B", "C"], 
          data=[[5,np.nan, "ok"], [7,8,"fine"], ["3rd",100,np.nan]])
df1

我需要的结果是:

试试这个解决方案

df1 = pd.DataFrame(index=['01JAN2017', '01FEB2017', '01MAR2017'], 
          columns=["A", "B", "C"], 
          data=[[5,np.nan, "ok"], [7,8,"fine"], ["3rd",100,np.nan]])
df1
试试这个解决方案

df1 = pd.DataFrame(index=['01JAN2017', '01FEB2017', '01MAR2017'], 
          columns=["A", "B", "C"], 
          data=[[5,np.nan, "ok"], [7,8,"fine"], ["3rd",100,np.nan]])
df1
使用方法

使用方法


您正在尝试以编程方式更改它吗?否则,您只需更改字符串文字lie 3.6 biturbo建议:
df1=pd.DataFrame(索引=['2017年1月1日','2017年2月1日','2017年3月1日',
列=[“A”、“B”、“C”],
数据=[[5,np.nan,“ok”],[7,8,“fine”],[“3rd”,100,np.nan])
df1

否则,您可以尝试:

df['date']=df['datetime']。应用(lambda x:x.strftime(“%d%m%Y”))
df['time']=df['datetime'].apply(lambda x:x.strftime('%H%M%S'))

您是否试图通过编程方式更改它?否则,您只需更改字符串文字lie 3.6 biturbo建议:
df1=pd.DataFrame(索引=['2017年1月1日','2017年2月1日','2017年3月1日',
列=[“A”、“B”、“C”],
数据=[[5,np.nan,“ok”],[7,8,“fine”],[“3rd”,100,np.nan])
df1

否则,您可以尝试:

df['date']=df['datetime']。应用(lambda x:x.strftime(“%d%m%Y”))
df['time']=df['datetime'].apply(lambda x:x.strftime('%H%M%S'))