第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在滿足條件的適應(yīng)數(shù)據(jù)框中合并行中的列,同時刪除行

在滿足條件的適應(yīng)數(shù)據(jù)框中合并行中的列,同時刪除行

紫衣仙女 2023-02-07 13:52:11
背景資料這個問題和我之前的問題密切相關(guān)。不幸的是,雖然構(gòu)成了一個一般性的例子,但它不夠具體,無法應(yīng)用于我的個人問題。這就是為什么這個問題更具體。示例 - 代碼片段import pandas as pdimport numpy as npinp = [{'ID_Code':1,'information 1':[10,22,44],'information 2':[1,0,1]},       {'ID_Code':2,'information 1':[400,323],'information 2':[1,1]},       {'ID_Code':2,'information 1':[243],'information 2':[0]},       {'ID_Code':2,'information 1':[333,555],'information 2':[0]},       {'ID_Code':3,'information 1':[12,27,43,54],'information 2':[1,0,1,1]},       {'ID_Code':3,'information 1':[31,42,13,14],'information 2':[1,0,0,0]},       {'ID_Code':3,'information 1':[14,24,34,14],'information 2':[1,0,1,1]},       {'ID_Code':4,'information 1':[15,25,33,44],'information 2':[0,0,0,1]},       {'ID_Code':5,'information 1':[12,12,13,14],'information 2':[1,1,1,0]},       {'ID_Code':5,'information 1':[12,12,13,24],'information 2':[1,0,1,1]},       {'ID_Code':5,'information 1':[21,22,23,14],'information 2':[1,1,1,1]},       {'ID_Code':6,'information 1':[10,12,23,4],'information 2':[1,0,1,0]},       {'ID_Code':7,'information 1':[112,212,143,124],'information 2':[0,0,0,0]},       {'ID_Code':7,'information 1':[211,321],'information 2':[1]},       {'ID_Code':7,'information 1':[431],'information 2':[1,0]},       {'ID_Code':8,'information 1':[1,2,3,4],'information 2':[1,0,0,1]}]df = pd.DataFrame(inp)df1=df.groupby("ID_Code")["information 1"].apply(list).to_frame()df2=df.groupby("ID_Code")["information 2"].apply(list).to_frame()df3=pd.concat([df1, df2],axis=1, sort=False)其中 ID_Code 不再是列而是索引。這是我在上一個問題中沒有指定的問題。
查看完整描述

1 回答

?
千萬里不及你

TA貢獻(xiàn)1784條經(jīng)驗 獲得超9個贊

它對我有用, Datanovice在上一個問題中給出的答案對索引進(jìn)行了一些更改。


正如問題所述,問題在于'ID_Code'成為索引而不是列。所以我的解決方案涉及添加一個具有唯一 ID_Code 的列。為此,我找到了兩種可能的方法。


解決方案 1


.unique()與 as .unique() 結(jié)合使用會pd.Dataframe()返回一個 numpy.ndarray,它必須再次轉(zhuǎn)換為 Dataframe。


df4 = pd.DataFrame(df['ID_Code'].unique(),columns=['ID_Code'],index=df['ID_Code'].unique())

df5 = pd.concat([df4,df3],axis=1)

col = 'ID_Code'

cond = [df5[col].eq(1),

       df5[col].isin([5,7])]


outputs = [3,2]


df5[col] = np.select(cond,outputs,default=df5[col])


df6 = df5.groupby(col).sum()

方案二


用于將.reset_index()ID_Code 從索引中移出到單獨的列中。


df3 = df3.reset_index()

col = 'ID_Code'

cond = [df3[col].eq(1),

       df3[col].isin([5,7])]


outputs = [3,2]


df3[col] = np.select(cond,outputs,default=df3[col])


df4 = df3.groupby(col).sum()


查看完整回答
反對 回復(fù) 2023-02-07
  • 1 回答
  • 0 關(guān)注
  • 122 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號