silce()函数:字段截取函数,作用对象是字符串!!!

import pandas as pd

df=pd.read_csv(r"C:\data\slice函数的使用\data1.csv",engine='python') #不写encoding='gbk'也行。默认是utf8

print(df.dtypes)
print('-----')
print(df['id'].dtypes)#如果一列中含有多个类型,则该列的类型会是object,同样字符串类型的列也会被当成object类型.

在这里插入图片描述
在这里插入图片描述

1.转化为字符串类型

'''
将id转化为字符串
astype()函数可用于转化dateframe某一列的数据类型
'''
df['id']=df['id'].astype(str)
print(df['id'].dtypes)

在这里插入图片描述
在这里插入图片描述

2.字段截取

'''
身份证:
前六位是地址码
接着8位是出生日期码
再3位是顺序码
最后一位是校验码
'''
#提取地址码
area=df['id'].str.slice(0,6)#注意不能将.str省去。

在这里插入图片描述

#提取出生日期码
birthday=df['id'].str.slice(6,14)

area和birthday都是Series类型
在这里插入图片描述

3.将截取后的信息添加回数据框DataFrame

#将信息添加回数据框
df['area']=area
df['birthday']=birthday

在这里插入图片描述

4.合并数据框的列

num=df['area']+df['birthday']#num是Series类型
df['num']=num

在这里插入图片描述

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐