在Python中,可以使用pandas库来按ID重新塑造数据框。下面是一个示例代码:
import pandas as pd
# 创建示例数据框
data = {'ID': [1, 1, 2, 2, 3, 3],
'Value': ['A', 'B', 'C', 'D', 'E', 'F']}
df = pd.DataFrame(data)
# 按ID重新塑造数据框
df_reshaped = df.pivot(index='ID', columns=df.groupby('ID').cumcount()+1, values='Value').add_prefix('Value_')
# 重置列索引
df_reshaped = df_reshaped.reset_index()
print(df_reshaped)
输出结果为:
ID Value_1 Value_2
0 1 A B
1 2 C D
2 3 E F
上述代码中,首先创建了一个示例数据框df
,包含两列:ID和Value。然后使用pivot
函数按ID重新塑造数据框,其中index='ID'
表示以ID列作为新数据框的行索引,columns=df.groupby('ID').cumcount()+1
表示将每个ID下的不同值按序号作为新数据框的列索引,values='Value'
表示将Value列的值填充到新数据框中。最后,使用add_prefix
函数给新数据框的列索引添加前缀,再使用reset_index
函数重置列索引。
这样就可以按ID重新塑造数据框,并且每个ID下的不同值作为新数据框的列。