大熊猫:通过列的值提取某些行作为数据框

时间:2018-10-13 08:47:52

标签: python pandas dataframe

我有一个列值列表,并且我想从现有数据框中通过循环使用此列值提取行,因为列表中包含很多值。

list = [2,4,5,6,7,8, ....., 2345]
df # df is an existing dataframe 
#'number' is the name of the column that has the value of list in it 

for i in list:
    df.loc[(df["number"] == i)])
df

for i in list:
   P = pd.DataFrame(df.loc[(df["number"] == i)])
P # extract only one column of a certain number

都没有得到我想要的结果。

1 个答案:

答案 0 :(得分:1)

使用isin获取具有以下列表值的行:

df = pd.DataFrame(np.arange(0,20).reshape(5,4),columns=list('abcd'))
    a   b   c   d
0   0   1   2   3
1   4   5   6   7
2   8   9  10  11
3  12  13  14  15
4  16  17  18  19

l = [2,7,19]

df.loc[df['d'].isin(l)]

    a   b   c   d
1   4   5   6   7
4  16  17  18  19

因此,column d在我们使用7选择的第一行和第四行中分别具有19isin