对于每一行,我想将每列的第一行作为新行

时间:2019-08-19 04:15:37

标签: pandas data-transform

我正在使用Python Pandas,并且有一个包含许多行的下表:

Date X        X     Date Y     Y
0 2014-03-31-   0.390-  2014-04-24- 1.80    
1 2014-04-01-   0.385-  2014-04-25- 1.75

我要为每个index(row)做的事情,从行中的每一列中获取xy的值,并从中创建新行,并得到如下内容:

0 2014-03-31    0.390
1 2014-04-24    1.80 

之所以尝试执行此操作,是因为我想在这两个日期之间进行插值

我尝试了与dataframe进行不同的合并,合并和游戏,但并没有真正的帮助

1 个答案:

答案 0 :(得分:0)

您可以尝试以下操作:

new_df = pd.DataFrame()
for index, row in df.iterrows():
    first_date = row['Date X']
    second_date = row['Date Y']
    x = row['X']
    y = row['Y']
    to_add = pd.DataFrame(data={'Dates': [first_date, second_date], 'params': [x, y]})
    new_df = new_df.append(to_add)
print(new_df)

,其中new_df是包含所有数据的新数据帧,而df是原始数据。