亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

如何根據特定列的值從 CSV 文件中選擇值

如何根據特定列的值從 CSV 文件中選擇值

慕雪6442864 2022-12-14 20:59:07
以此 csv 為例:Col1, Col21,3,0,5,1,40,7假設我有一個列表,并且僅當同一行中Col2的值為 時,我才想將 的值附加到列表中。結果列表應該是.Col11[3,4]我怎樣才能在不使用的情況下用熊貓做到這一點iterrows()?
查看完整描述

3 回答

?
滄海一幻覺

TA貢獻1824條經驗 獲得超5個贊

我認為這.loc是最pythonic和最簡單的方法。


df.loc[df['Col1'] == '1']['Col2'].to_list()

另一種使用np.where:


import numpy as np

df['Col3'] = np.where(df['Col1'] == 1, df['Col2'], '')

listt = list(filter(None,df['Col3'].to_list()))

zip是 的循環替代方案iterrows。


listt = []

for x, y in zip(df['Col1'], df['Col2']):

    if x == 1:

        listt.append(y)


查看完整回答
反對 回復 2022-12-14
?
鳳凰求蠱

TA貢獻1825條經驗 獲得超4個贊

假設你已經讀csv入了一個名為 的數據框df,你可以使用這個:

wanted = df.query('Col1 == 1')['Col2'].values
mylist.extend(wanted)


查看完整回答
反對 回復 2022-12-14
?
POPMUISE

TA貢獻1765條經驗 獲得超5個贊

import pandas as pd


lst_result=[]

for ind, row in df.iterrows():

    if df.at[ind,'Col1'] == 1:

        lst_result.append(df.at(ind,['Col2']))

print(lst_result)


查看完整回答
反對 回復 2022-12-14
  • 3 回答
  • 0 關注
  • 116 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號