我是 python 新手。所以我試圖將每行/列的總和與值“3”相加,并將其存盤在我的資料框中的一個新列中。
我的資料如下所示:
[A] [B] [C] [D] [E] [F]
ID1 1 2 2 3 1 1
ID2 3 1 2 3 1 1
ID3 1 1 2 1 1 2
ID4 3 2 2 3 1 1
ID5 1 1 2 3 1 3
所以我想創建一個名為“G”的新列,計算每個“ID”的值為 3 的次數。
有人可以幫忙嗎?
uj5u.com熱心網友回復:
采用:
df['G'] = df.eq(3).sum(axis=1)
print(df)
# Output
A B C D E F G
ID1 1 2 2 3 1 1 1
ID2 3 1 2 3 1 1 2
ID3 1 1 2 1 1 2 0
ID4 3 2 2 3 1 1 2
ID5 1 1 2 3 1 3 2
uj5u.com熱心網友回復:
這應該給你你需要的
data = {'A' : ['ID1', 'ID1', 'ID1', 'ID1', 'ID1'], 'A' : [1, 3, 1, 3, 1], 'B' : [2, 1, 1, 2, 1], 'C' : [2, 2, 2, 2, 2], 'D' : [3, 3, 1, 3, 3] }
df = pd.DataFrame(data)
df['G'] = df[list(df.columns)].apply(lambda x : sum(1 for row_data in x if row_data == 3), axis = 1)
df
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/441290.html
上一篇:如何為熊貓資料框列生成權重?
下一篇:在熊貓資料框中將列值乘以列標題
