![](/img/trans.png)
[英]pandas dataframe create new columns and fill values by using the values of the first column
[英]Create and fill new columns using values in rows pandas
我有兩個數據框:
Dataframe A:
Col1 Col2 Value
A X 1
A Y 2
B X 3
B Y 2
C X 5
C Y 4
Dataframe B:
Col1
A
B
C
我需要為 Dataframe A 的 Col2 中的每個值(在本例中為 X 和 Y)中的每個值添加到 Dataframe B 一列,並在合並 Col1 上的兩個數據幀后用“值”列中的值填充它們。 就這個:
Col1 X Y
A 1 2
B 3 2
C 5 4
非常感謝您的幫助!
B['X'] = A.loc[A['Col2'] == 'X', 'Value'].reset_index(drop = True)
B['Y'] = A.loc[A['Col2'] == 'Y', 'Value'].reset_index(drop = True)
Col1 X Y
0 A 1 2
1 B 3 2
2 C 5 4
如果您要在 Col2 中有 100 個不同的值,那么您將在循環中調用上述兩行,如下所示:
for t in A['Col2'].unique():
B[t] = A.loc[A['Col2'] == t, 'Col3'].reset_index(drop = True)
B[t] = A.loc[A['Col2'] == t, 'Col3'].reset_index(drop = True)
B
你得到相同的 output:
Col1 X Y
0 A 1 2
1 B 3 2
2 C 5 4
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.