我正在尋找類似的解決方案,但我找不到它并且時間不夠了,所以我必須寫這個問題,請幫助我。首先,我使用熊貓來獲取輸出,所以請幫助我。
所以我想要實作的是我想將一個特定的 groupby 組分配給另一行,例如我在 groupby 中有一個組,我想要在另一列同一行中,所以我將此值分配給另一列,因為它正在寫入行,所以它會寫在不同列的同一行(我也對此表示懷疑,但會在克服當前障礙后看到)但不是獲取組的值,而是在其他列中獲取組的行號示例如下:
group_count=df['id'].value_counts()
group_count=group_count.to_dict()
for i in group_count:
for j in range(group_count[i]):
df['masked_id_' str(j 1)].iloc[j:j 1]=gk.get_group(i)['masked_id'].iloc[j:j 1]
我想要實作的只是將重復 id 的 masked_id 轉移到不同的列中,例如我有 3 個類似的 id 說:
id masked_id
1 23234 XXXX4
2 23234 XXXX4
3 23234 XXXX4
將其變成如下所示的內容:
id masked_id_1 masked_id_2 masked_id_3
1 23234 XXXX4 XXXX4 XXXX4
但我得到的是:
id masked_id_1 masked_id_2 masked_id_3
23234 1 2 3
尋找任何向類似方向傳播的指導,非常感謝您抽出時間。
更新(關于gk的資訊):
gk = df.groupby(by='id')
uj5u.com熱心網友回復:
試試這個:
new_df = df.groupby('id')['masked_id'].agg(list).agg(pd.Series)
new_df.columns = 'masked_id_' (new_df.columns 1).astype(str)
new_df = new_df.reset_index()
輸出:
>>> new_df
id masked_id_1 masked_id_2 masked_id_3
0 23234 XXXX4 XXXX4 XXXX4
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/402325.html
標籤:
