import pandas as pd
import numpy as np
def idtoarea(idnum):
idnum=idnum['身份证']
if len(idnum)!=18:
return [np.nan*3]
area=int(idnum[:6])
birth=int(idnum[6:14])
sex=int(idnum[16:17])
area=idinfo.loc[area]
area=area[0]
return area
def idtobirth(idnum):
idnum=idnum['身份证']
if len(idnum)!=18:
return [np.nan*3]
area=int(idnum[:6])
birth=int(idnum[6:14])
sex=int(idnum[16:17])
area=idinfo.loc[area]
area=area[0]
return birth
def idtosex(idnum):
idnum=idnum['身份证']
if len(idnum)!=18:
return [np.nan*3]
area=int(idnum[:6])
birth=int(idnum[6:14])
sex=int(idnum[16:17])
area=idinfo.loc[area]
area=area[0]
if sex&1:
return '男'
else:
return '女'
shenfenzheng = pd.read_excel("151单列身份证.xlsx")
idinfo = pd.read_csv('151身份证区号对应表.csv',encoding='utf-8',header=None,names=['代码','区域'],index_col=0)
shenfenzheng["户籍地"] = shenfenzheng.apply(idtoarea,axis=1)
shenfenzheng["生日"] = shenfenzheng.apply(idtobirth,axis=1)
shenfenzheng["性别"] = shenfenzheng.apply(idtosex,axis=1)
shenfenzheng
| 身份证 | 户籍地 | 生日 | 性别 |
|---|
| 0 | 331002199505127463 | 浙江省台州市椒江区 | 19950512 | 女 |
|---|
| 1 | 110117198909236600 | 北京市平谷区 | 19890923 | 女 |
|---|
| 2 | 130732196605209540 | 河北省张家口市赤城县 | 19660520 | 女 |
|---|
| 3 | 130683195111307896 | 河北省保定市安国市 | 19511130 | 男 |
|---|
| 4 | 23060619960408401X | 黑龙江省大庆市大同区 | 19960408 | 男 |
|---|
| 5 | 370634197210224320 | 山东省烟台市长岛县 | 19721022 | 女 |
|---|
| 6 | 632722199912061663 | 青海省玉树藏族自治州杂多县 | 19991206 | 女 |
|---|
| 7 | 220521196411030544 | 吉林省通化市通化县 | 19641103 | 女 |
|---|
| 8 | 542200196405291738 | 西藏自治区山南地区 | 19640529 | 男 |
|---|
| 9 | 513433197112306308 | 四川省凉山彝族自治州冕宁县 | 19711230 | 女 |
|---|
| 10 | 360424197507128377 | 江西省九江市修水县 | 19750712 | 男 |
|---|
| 11 | 350627198908297043 | 福建省漳州市南靖县 | 19890829 | 女 |
|---|
| 12 | 620600200205299064 | 甘肃省武威市 | 20020529 | 女 |
|---|
| 13 | 152502199311106300 | 内蒙古自治区锡林郭勒盟锡林浩特市 | 19931110 | 女 |
|---|
| 14 | 511322194502251015 | 四川省南充市营山县 | 19450225 | 男 |
|---|
| 15 | 13043219610902273X | 河北省邯郸市广平县 | 19610902 | 男 |
|---|
| 16 | 623001196403049493 | 甘肃省甘南藏族自治州合作市 | 19640304 | 男 |
|---|
| 17 | 640323199604057683 | 宁夏回族自治区吴忠市盐池县 | 19960405 | 女 |
|---|
| 18 | 340703195302230732 | 安徽省铜陵市狮子山区 | 19530223 | 男 |
|---|