如何用python pandas按某列中字符长度等于18位的条件 筛选出excel表中所有数据?

比如,一个excel 表中,有一列是各类证件号,如何用python pandas 方法,按按某列中字符长度等于18位的条件 筛选出excel表中所有数据。这个条件如何写?

1个回答

用str.len方法来获取长度:

import pandas as pd
import numpy as np
from pandas import DataFrame,Series
lc = pd.DataFrame(pd.read_csv('LoanStats3a.csv',header=0,dtype=str))
df = lc[lc["ID"].str.len() == 18]
print(df)

LoanStats3a.csv文件demo为:

ID,name,age
320625198811201233,wang,32
120625198811201233,wang1,32
220625198811201233,wang2,32
320625198811201233,wang3,32
420625198811201233,wang4,32
520625198811201233,wang5,32
5206,wang5,32

核心筛选语句为:df = lc[lc["ID"].str.len() == 18],每列必须是字符类型,使用str.len才能进行长度判断。

weixin_43003324
weixin_43003324 回复weixin_43003324: h= df1[df1.T.isnull().any()]用这个语句可以筛选出任何行中包含有空值的所有数据
7 个月之前 回复
wojiushiwo945you
毕小宝 回复weixin_43003324: DataFrame有筛选NA的条件,我也不熟悉。上面的代码是我网络搜索后写的,我也是初学Python。
7 个月之前 回复
weixin_43003324
weixin_43003324 测试可用,还想请教个问题,如果某列有空值,如何筛选出这些含空值的行数据?
7 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!