如何解析Pandas DataFrame中嵌套JSON格式的Hours列?
解析DataFrame中Hours列的嵌套字典
你的Hours列已经是Python字典(或None)格式,不需要再做JSON字符串解析,直接展开成独立列即可,以下是两种实用方法:
方法一:使用pd.json_normalize(推荐)
这个方法专为嵌套JSON/字典结构设计,能快速将字典的键转为列名,值填充对应行:
import pandas as pd # 展开Hours列的嵌套字典 hours_expanded = pd.json_normalize(checkin_df['Hours']) # 合并展开后的列到原DataFrame,同时移除原Hours列 final_df = checkin_df.drop('Hours', axis=1).join(hours_expanded)
方法二:使用apply(pd.Series)
如果习惯更直观的操作,也可以用apply把每个字典转成Series:
hours_expanded = checkin_df['Hours'].apply(pd.Series) final_df = checkin_df.drop('Hours', axis=1).join(hours_expanded)
处理缺失值
展开后,缺少对应星期几的行会显示NaN,如果需要统一填充闭店标识(比如0:0-0:0),可以执行:
final_df = final_df.fillna('0:0-0:0')
验证结果
查看处理后的DataFrame:
print(final_df.head())
内容的提问来源于stack exchange,提问作者user15564501
相关产品推荐
相关产品推荐

