Pandas之DataFrame—行与列的查询与匹配

如果这里阅读体验不佳,我另外上传一份HTML在私人播客;以及jupyter notebook文件供大家练习

Python: 3.8.8
Pandas: 1.2.4
NumPy: 1.20.1

import numpy as np
import pandas as pd
df=pd.DataFrame(np.arange(12).reshape((3,4)),index=['one','two','thr'],columns=list('abcd'))

执行结果:

abcdone0123two4567thr891011

df['a']
df[['a','b']]

执行结果:

abone01two45thr89

loc——通过行标签索引行数据 此处为one two / abcd
iloc——通过行号索引行数据 01234

iloc可以用数字索引,也可以用index和column索引

df.iloc[0]

执行结果:

a    0
b    1
c    2
d    3
Name: one, dtype: int64
df.iloc[0:2]

执行结果:

abcdone0123two4567

df.loc['one':'two']

执行结果:

abcdone0123two4567

df.loc[['one','two'],['a','c']]

执行结果:

acone02two46

d=[
    pd.Series([21,'jel','20210623',21,51100],index=['age','nickname','login_date','user_id','lover_id']),
    pd.Series([19,'dscx','20200623',22,51101],index=['age','nickname','login_date','user_id','lover_id']),
    pd.Series([25,'lll','20210323',23,51002],index=['age','nickname','login_date','user_id','lover_id']),
    pd.Series([30,'lent','20210601',26,51021],index=['age','nickname','login_date','user_id','lover_id'])
]
df= pd.DataFrame(d,columns=['age','nickname','login_date','user_id','lover_id'])
df

执行结果:

agenicknamelogin_dateuser_idlover_id021jel202106232151100119dscx202006232251101225lll202103232351002330lent202106012651021

“==” 匹配

df.loc[df['user_id']>21]

执行结果:

选取某列是否是某一类型的数值 用 isin

df.loc[df['age'].isin([21,19])]

执行结果:

agenicknamelogin_dateuser_idlover_id021jel202106232151100119dscx202006232251101

多种条件的选取 用 &

df.loc[(df['age'] <30) & df['user_id'].isin([21,22,23,26])]

执行结果:

agenicknamelogin_dateuser_idlover_id021jel202106232151100119dscx202006232251101225lll202103232351002

选取不等于某些值的行记录 用 !=

df.loc[df['login_date'] != 20210623]

执行结果:

agenicknamelogin_dateuser_idlover_id021jel202106232151100119dscx202006232251101225lll202103232351002330lent202106012651021

isin返回一系列的数值,如果要选择不符合这个条件的数值使用”~”

df.loc[~df['user_id'].isin([21,22])]

执行结果:

agenicknamelogin_dateuser_idlover_id225lll202103232351002330lent202106012651021

Original: https://blog.csdn.net/u014526549/article/details/118157853
Author: 悟三一
Title: Pandas之DataFrame—行与列的查询与匹配

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/677339/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球