pandas根据身份证号码计算年龄
时间: 2023-08-15 11:04:44 浏览: 579
sql语句 根据身份证号计算年龄
根据身份证号码计算年龄的方法可以使用pandas库中的to_datetime函数和datetime库中的date.today()函数。首先,需要将身份证号码中的出生日期提取出来,可以使用字符串切片的方式获取出生日期的部分。然后,将提取出来的出生日期字符串转换为日期格式,再使用date.today()函数获取当前日期。最后,通过计算当前日期与出生日期的差值,可以得到年龄。
以下是一个示例代码:
```python
import pandas as pd
from datetime import date
# 假设身份证号码列名为'身份证号码',在DataFrame中为df
df\['出生日期'\] = pd.to_datetime(df\['身份证号码'\].str\[6:14\], format='%Y%m%d', errors='coerce')
df\['年龄'\] = (date.today() - df\['出生日期'\]).astype('<m8\[Y\]')
```
这段代码首先使用pd.to_datetime函数将身份证号码中的出生日期转换为日期格式,并将结果存储在新的列'出生日期'中。然后,使用date.today()函数获取当前日期,并与出生日期相减得到年龄。最后,将年龄存储在新的列'年龄'中。
请注意,这段代码假设身份证号码的格式为8位的日期字符串,例如'19900101'。如果身份证号码的格式不同,需要根据实际情况进行调整。
#### 引用[.reference_title]
- *1* *2* *3* [pandas从身份证中取得生日,转为日期](https://blog.csdn.net/qq_27361945/article/details/120705305)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文