Python Pandas中根据列的值选取多行数据
Pandas中根据列的值选取多行数据
#选取等于某些值的行记录用==
df.loc[df['column_name']==some_value]
#选取某列是否是某一类型的数值用isin
df.loc[df['column_name'].isin(some_values)]
#多种条件的选取用&
df.loc[(df['column']==some_value)&df['other_column'].isin(some_values)]
#选取不等于某些值的行记录用!=
df.loc[df['column_name']!=some_value]
#isin返回一系列的数值,如果要选择不符合这个条件的数值使用~
df.loc[~df['column_name'].isin(some_values)]
importpandasaspd
importnumpyasnp
df=pd.DataFrame({'A':'foobarfoobarfoobarfoofoo'.split(),
'B':'oneonetwothreetwotwoonethree'.split(),
'C':np.arange(8),'D':np.arange(8)*2})
print(df)
ABCD
0fooone00
1barone12
2footwo24
3barthree36
4footwo48
5bartwo510
6fooone612
7foothree714
print(df.loc[df['A']=='foo'])
ABCD
0fooone00
2footwo24
4footwo48
6fooone612
7foothree714
#如果你想包括多个值,把它们放在一个list里面,然后使用isin
print(df.loc[df['B'].isin(['one','three'])])
ABCD
0fooone00
1barone12
3barthree36
6fooone612
7foothree714
df=df.set_index(['B'])
print(df.loc['one'])
ABCD
onefoo00
onebar12
onefoo612
ABCD
onefoo00
onebar12
twofoo24
twofoo48
twobar510
onefoo612
总结
以上所述是小编给大家介绍的PythonPandas中根据列的值选取多行数据,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。