Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 在不丢失其他列的情况下,将多个列作为索引添加到datetime_Python 3.x_Pandas_Datetime - Fatal编程技术网

Python 3.x 在不丢失其他列的情况下,将多个列作为索引添加到datetime

Python 3.x 在不丢失其他列的情况下,将多个列作为索引添加到datetime,python-3.x,pandas,datetime,Python 3.x,Pandas,Datetime,我有一个看起来像这样的数据帧(除了更长的数据帧)。我想转换为日期时间索引 YYYY MM D value 679 1900 1 1 46.42 1355 1900 2 1 137.14 1213 1900 3 1 104.25 1380 1900 4 1 149.39 1336 1900 5 1 130.33 当我用这个的时候 df = pd.to_datetime((df.YYYY*10000+df.MM*100+df

我有一个看起来像这样的数据帧(除了更长的数据帧)。我想转换为日期时间索引

      YYYY  MM  D   value
679   1900   1  1   46.42
1355  1900   2  1  137.14
1213  1900   3  1  104.25
1380  1900   4  1  149.39
1336  1900   5  1  130.33
当我用这个的时候

df = pd.to_datetime((df.YYYY*10000+df.MM*100+df.D).apply(str),format='%Y%m%d')
我检索了datetime索引,但丢失了value列。 我最终想要的是-

             value
1900-01-01   46.42
1900-02-01   137.14
1900-03-01   104.25
1900-04-01   149.39
1900-05-01   130.33
我该怎么做?
提前感谢您的时间

您可以使用pandas to_datetime来转换此值

df = df.astype(str)
df.index = pd.to_datetime(df['YYYY'] +' '+ df['MM']+' ' +df['D'])
df.drop(['YYYY','MM','D'],axis=1,inplace=True)
输出:

            value
1900-01-01  46.42
1900-02-01  137.14
1900-03-01  104.25
1900-04-01  149.39
1900-05-01  130.33