Python 如何在Pandas中设置timeseries数据的功能?

Python 如何在Pandas中设置timeseries数据的功能?,python,pandas,Python,Pandas,我的数据结构如下: Group, ID, Time, Feat1, Feat2, Feat3 A, 1, 0, 1.52, 2.94, 3.1 A, 1, 2, 1.67, 2.99, 3.3 A, 1, 4, 1.9, 3.34, 5.6 Group, ID, Feat1_Time0, Feat1_Time2, Feat1_Time4, Feat2_Time0, Feat2_Time2, Feat2_Time4, Feat3_Time0, Feat3_Time2, Feat3_Time4 A

我的数据结构如下:

Group, ID, Time, Feat1, Feat2, Feat3
A, 1, 0, 1.52, 2.94, 3.1
A, 1, 2, 1.67, 2.99, 3.3
A, 1, 4, 1.9, 3.34, 5.6
Group, ID, Feat1_Time0, Feat1_Time2, Feat1_Time4, Feat2_Time0, Feat2_Time2, Feat2_Time4, Feat3_Time0, Feat3_Time2, Feat3_Time4
A, 1, 1.52, 2.94, 3.1, 1.67, 2.99, 3.3, 1.9, 3.34, 5.6
在这些数据中,有些人已经被反复测量过

我希望重新构造数据,使每个要素时间组合都是一个唯一的列,如下所示:

Group, ID, Time, Feat1, Feat2, Feat3
A, 1, 0, 1.52, 2.94, 3.1
A, 1, 2, 1.67, 2.99, 3.3
A, 1, 4, 1.9, 3.34, 5.6
Group, ID, Feat1_Time0, Feat1_Time2, Feat1_Time4, Feat2_Time0, Feat2_Time2, Feat2_Time4, Feat3_Time0, Feat3_Time2, Feat3_Time4
A, 1, 1.52, 2.94, 3.1, 1.67, 2.99, 3.3, 1.9, 3.34, 5.6
有没有一种简单的方法来处理这个问题,而不使用for循环?我已经尝试使用for-loop方法来实现我所需要的功能,但它既不雅观又笨重,而且给定104列的实际数据,也需要一段时间

df = pd.DataFrame({'Group': {0: 'A', 1: 'A', 2: 'A', 3: 'A', 4: 'A', 5: 'A'},
                   'Time': {0: 0, 1: 2, 2: 4, 3: 0, 4: 2, 5: 4},
                   'ID': {0: 1, 1: 1, 2: 1, 3: 2, 4: 2, 5: 2},
                   'Feat1': {0: 1.52, 1: 1.6699999999999999, 2: 1.8999999999999999, 3: 1.52, 4: 1.6699999999999999, 5: 1.8999999999999999},
                   'Feat3': {0: 3.1000000000000001, 1: 3.2999999999999998, 2: 5.5999999999999996, 3: 3.1000000000000001, 4: 3.2999999999999998, 5: 5.5999999999999996},
                   'Feat2': {0: 2.9399999999999999, 1: 2.9900000000000002, 2: 3.3399999999999999, 3: 2.9399999999999999, 4: 2.9900000000000002, 5: 3.3399999999999999}})

df1 = df.set_index(['Group', 'ID', 'Time']).unstack()
df1


天才!如果每个人都有其他重复的特征,比如说,一个二进制字符也会在每个人身上重复,该怎么办?我试图直接使用您的代码,但出现了一个未堆叠的错误-
ValueError:Index包含重复的条目,无法重塑
,只是为了澄清一点,我尝试了使用合成数据,没有问题。对我来说,这一定是一个数据问题……我建议再问一个问题,因为我必须查看数据。我希望我能分享数据——这是来自梦想呼吸病毒挑战赛的数据,并且有严格的数据共享禁令(无论如何,谢谢你的帮助:)