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

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

獲取數(shù)據(jù)框中匹配和不匹配列數(shù)據(jù)的計數(shù)

獲取數(shù)據(jù)框中匹配和不匹配列數(shù)據(jù)的計數(shù)

精慕HU 2022-06-28 10:13:30
我有兩個類似的數(shù)據(jù)框,這是輸入的 csv 數(shù)據(jù)。Document_ID OFFSET  PredictedFeature    0         0            2000    0         8            2000    0         16           2200    0         23           2200    0         30           2200    1          0            2100    1          5            2100    1          7            2100現(xiàn)在我也有輸出數(shù)據(jù) Document_ID    OFFSET   PredictedFeature        0         0            2000        0         8            2100        0         16           2100        0         23           2100        0         30           2200        1          0           2000        1          5           2000        1          7           2100現(xiàn)在,我在這里要做的是匹配他們得到或沒有得到的結(jié)果。所以我做了 ,df1_inputPredictedFeature_column['new'] = df1_inputPredictedFeature_column['PredictedFeature'] == df1_predictedFeature_column['PredictedFeature']這會添加一列來告訴天氣它是否與預(yù)測特征列匹配?,F(xiàn)在我正在嘗試的是,共有 2 個特征,其中 2000 在輸入 csv 的預(yù)測特征中。但在輸出 csv 中,它僅排在第一位,而不是排在第二位。所以我正在嘗試獲取這些數(shù)據(jù),例如,predictedFeatureClass  inputCsvOccured   outputcsvmatched   2000                        2                12200                         3                 1那么,我將如何獲得這些數(shù)據(jù)?任何幫助都會很棒。
查看完整描述

2 回答

?
小唯快跑啊

TA貢獻1863條經(jīng)驗 獲得超2個贊

您可以使用 groupby 來完成,如下所示


df1_inputPredictedFeature_column = pd.DataFrame([['0', '0', '2000'], ['0', '8', '2000'], ['0', '16', '2200'], ['0', '23', '2200'], ['0', '30', '2200'], ['1', '0', '2100'], ['1', '5', '2100'], ['1', '7', '2100']], columns=('Document_ID', 'OFFSET', 'PredictedFeature'))

df1_predictedFeature_column = pd.DataFrame([['0', '0', '2000'], ['0', '8', '2100'], ['0', '16', '2100'], ['0', '23', '2100'], ['0', '30', '2200'], ['1', '0', '2000'], ['1', '5', '2000'], ['1', '7', '2100']], columns=('Document_ID', 'OFFSET', 'PredictedFeature'))


df1_inputPredictedFeature_column['new'] = (df1_inputPredictedFeature_column['PredictedFeature'] == df1_predictedFeature_column['PredictedFeature']).astype(np.int)


result = df1_inputPredictedFeature_column.groupby("PredictedFeature").agg({"PredictedFeature":"count", "new":np.sum})


result.columns = ["inputCsvOccured", "outputcsvmatched"]

result.index.name = "predictedFeatureClass"


result.reset_index(inplace=True)

print(result)

結(jié)果


predictedFeatureClass  inputCsvOccured  outputcsvmatched

0                  2000                2                 1

1                  2100                3                 1

2                  2200                3                 1


查看完整回答
反對 回復(fù) 2022-06-28
?
慕哥9229398

TA貢獻1877條經(jīng)驗 獲得超6個贊

一個想法是通過元組列表將new列轉(zhuǎn)換為整數(shù),Series.view然后通過元組列表聚合列new以指定新列名:sizesum


df1['new'] = (df1['PredictedFeature'] == df2['PredictedFeature']).view('i1')


df = (df1.groupby("PredictedFeature")['new']

         .agg([('inputCsvOccured','size'), ('outputcsvmatched','sum')])

         .reset_index())

print (df)

   PredictedFeature  inputCsvOccured  outputcsvmatched

0              2000                2                 1

1              2100                3                 1

2              2200                3                 1

熊貓 0.25+ 解決方案:


df1['new'] = (df1['PredictedFeature'] == df2['PredictedFeature']).view('i1')


df = (df1.groupby("PredictedFeature")

         .agg(inputCsvOccured=pd.NamedAgg(column='new', aggfunc='size'),

              outputcsvmatched=pd.NamedAgg(column='new', aggfunc='sum'))

         .reset_index())


查看完整回答
反對 回復(fù) 2022-06-28
  • 2 回答
  • 0 關(guān)注
  • 121 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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