我有一個資料框,我想在其中使用 Input 函式來選擇一行或一組行。
資料
type stat country
aa1 y ca
bb2 n ny
cc3 y tx
期望的
Use Input("select type value: ")
type in: aa1, bb2
*selects appropriate rows
type stat country
aa1 y ca
bb2 n ny
正在做
out = Input("select type value: ")
df.loc[df['type'].isin([aa1, bb2])]
我在想我可以將 .loc 與 w input() 結合起來,任何建議都值得贊賞。
uj5u.com熱心網友回復:
使用query:
out = input("select type value: ")
vals = [v.strip() for v in out.split(',')]
df1 = df.query('type.isin(@vals)')
print(df1)
輸出
select type value: aa1,bb2
type stat country
0 aa1 y ca
1 bb2 n ny
uj5u.com熱心網友回復:
因為輸入是字串,,僅split用于帶有條帶的串列['aa1','bb2']以洗掉尾隨空格,因為型別aa1,bb2不像aa1, bb2問題中提到的那樣:
df[df['type'].isin([x.strip() for x in out.split(',')])]
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/415090.html
標籤:
下一篇:你能解釋為什么沒有列印輸出嗎?
