当前位置: 首页 > news >正文

拆分盘网站建设郑州制作平台网站

拆分盘网站建设,郑州制作平台网站,网页升级访问新域名,二级域名对网站帮助57_Pandas中的json_normalize将字典列表转换为DataFrame 可以使用 pandas.json_normalize() 将具有公共键的字典列表转换为 pandas.DataFrame。 由于它是一种常用的JSON格式#xff0c;可以通过Web API获取#xff0c;所以能够将其转换为pandas.DataFrame是非常方便的。 在…57_Pandas中的json_normalize将字典列表转换为DataFrame 可以使用 pandas.json_normalize() 将具有公共键的字典列表转换为 pandas.DataFrame。 由于它是一种常用的JSON格式可以通过Web API获取所以能够将其转换为pandas.DataFrame是非常方便的。 在此对以下内容进行说明。 使用 pandas.DataFrame() 进行转换pandas.json_normalize() 的基本用法更复杂的情况arguments record_path, meta 使用 pandas.read_json() 直接读取 JSON 字符串或文件作为 pandas.DataFrame 而不是由字典或列表组成的对象。 56_Pandas读取 JSON 字符串/文件 (read_json) 请注意pandas.json_normalize() 是从 pandas 1.0.0 提供的在以前的版本中是作为 pandas.io.json.json_normalize() 提供的。从 1.2.2 开始pandas.io.json.json_normalize() 仍然可以使用但已弃用并且会出现警告FutureWarning。 使用 pandas.DataFrame() 进行转换 以下面的字典列表为例 import pandas as pdl_simple [{name: Alice, age: 25},{name: Bob}]字典中的key键成为列标签列名key不存在时的元素成为缺失值NaN。 print(pd.DataFrame(l_simple)) # name age # 0 Alice 25.0 # 1 Bob NaN与 pandas.json_normalize() 的结果相同。 print(pd.json_normalize(l_simple)) # name age # 0 Alice 25.0 # 1 Bob NaNpandas.json_normalize() 的基本用法 以字典为字典值的嵌套字典列表为例。 l_nested [{name: Alice, age: 25, id: {x: 2, y: 8}},{name: Bob, id: {x: 10, y: 4}}]使用 pandas.DataFrame() 时值字典被转换为元素。 print(pd.DataFrame(l_nested)) # name age id # 0 Alice 25.0 {x: 2, y: 8} # 1 Bob NaN {x: 10, y: 4}使用 pandas.json_normalize() 还将嵌套字典转换为每个键的单独列。 print(pd.json_normalize(l_nested)) # name age id.x id.y # 0 Alice 25.0 2 8 # 1 Bob NaN 10 4嵌套部分.默认为列名。这个分隔符可以用参数 sep 改变。 print(pd.json_normalize(l_nested, sep_)) # name age id_x id_y # 0 Alice 25.0 2 8 # 1 Bob NaN 10 4更复杂的情况arguments record_path, meta 如果字典值是如下所示的字典列表。 l_complex [{label: X,info : {n: nx, m: mx},data: [{a: 1, b: 2},{a: 3, b: 4}]},{label: Y,info : {n: ny, m: my},data: [{a: 10, b: 20},{a: 30, b: 40}]}]默认情况下字典列表成为一个元素。 print(pd.json_normalize(l_complex)) # label data info.n info.m # 0 X [{a: 1, b: 2}, {a: 3, b: 4}] nx mx # 1 Y [{a: 10, b: 20}, {a: 30, b: 40}] ny my如果在参数 record_path 中指定一个键则只会转换与该键对应的值。可以使用参数 record_prefix 将前缀添加到列名。 print(pd.json_normalize(l_complex, record_pathdata)) # a b # 0 1 2 # 1 3 4 # 2 10 20 # 3 30 40print(pd.json_normalize(l_complex, record_pathdata, record_prefixdata_)) # data_a data_b # 0 1 2 # 1 3 4 # 2 10 20 # 3 30 40如果要转换其他键值请使用参数 meta 指定它。可以使用参数 meta_prefix 将前缀添加到列名。 print(pd.json_normalize(l_complex, record_pathdata)) # a b # 0 1 2 # 1 3 4 # 2 10 20 # 3 30 40print(pd.json_normalize(l_complex, record_pathdata, record_prefixdata_)) # data_a data_b # 0 1 2 # 1 3 4 # 2 10 20 # 3 30 40如果要转换其他键值请使用参数 meta 指定它。可以使用参数 meta_prefix 将前缀添加到列名。 print(pd.json_normalize(l_complex, record_pathdata,metalabel)) # a b label # 0 1 2 X # 1 3 4 X # 2 10 20 Y # 3 30 40 Yprint(pd.json_normalize(l_complex, record_pathdata,metalabel, meta_prefixmeta_)) # a b meta_label # 0 1 2 X # 1 3 4 X # 2 10 20 Y # 3 30 40 Y如果 meta 指定的键对值是一个字典则可以在列表 [[, ], …] 中指定子键。默认情况下列名是 .但在这里你可以用参数 sep 更改分隔符。 print(pd.json_normalize(l_complex, record_pathdata,metainfo)) # a b info # 0 1 2 {n: nx, m: mx} # 1 3 4 {n: nx, m: mx} # 2 10 20 {n: ny, m: my} # 3 30 40 {n: ny, m: my}print(pd.json_normalize(l_complex, record_pathdata,meta[[info, n], [info, m]])) # a b info.n info.m # 0 1 2 nx mx # 1 3 4 nx mx # 2 10 20 ny my # 3 30 40 ny myprint(pd.json_normalize(l_complex, record_pathdata,meta[[info, n], [info, m]],sep_)) # a b info_n info_m # 0 1 2 nx mx # 1 3 4 nx mx # 2 10 20 ny my # 3 30 40 ny my要将此示例中的所有元素转换为 pandas.DataFrame请设置 print(pd.json_normalize(l_complex, record_pathdata,meta[label, [info, n], [info, m]],sep_)) # a b label info_n info_m # 0 1 2 X nx mx # 1 3 4 X nx mx # 2 10 20 Y ny my # 3 30 40 Y ny my 请注意即使单独指定子键它也必须是像 meta[[, ]] 这样的列表列表。如果 meta[, ] 则出错。 print(pd.json_normalize(l_complex, record_pathdata,meta[[info, n]])) # a b info.n # 0 1 2 nx # 1 3 4 nx # 2 10 20 ny # 3 30 40 ny# print(pd.json_normalize(l_complex, record_pathdata, # meta[info, n])) # KeyError: Try running with errorsignore as key n is not always present
http://www.hkea.cn/news/14300889/

相关文章:

  • 个人类网站有哪些wordpress 标题 插件
  • 有没有在线辅导家做的网站全屏网站模版
  • 现在做网站建设的公司多么四川省建设信息网官网
  • 取消工法建设部网站免费推广软件哪个好一点
  • 最常用的网站开发工具商务网页设计与制作课后答案
  • 视频网站的链接怎么做阿里云个人网站备案过程全记录
  • 淄博比较好的网站建设公司重庆公司注册官网入口
  • 基于aws ec2免费实例进行网站建设网站部分频道完全不收录了怎么做
  • 装修网站是怎么建设的网站开发合同适用印花税
  • 电子商务网站建设的四个步骤牌匾设计效果图
  • iis7创建网站企业安全文化建设的核心内容
  • 福州企业网站推广广东自考网站建设管理
  • 邢台手机网站建设杭州网站建设代理商
  • 怎么样优化网站seo知名企业文化
  • wordpress自定义分类名称网站排名seo培训
  • 单位网站开发商城型企业网站的功能
  • 织梦可以做论坛网站吗湖南网站备案要多少天
  • php怎么做视频网站西安在线网站
  • 徐闻住房与城乡建设局网站上海简约网站建设公司
  • 建立门户网站的费用做网站阜新
  • 使用arcgis进行网站开发建设网站企业公司
  • 岳西县住房和城乡建设局网站网页设计与制作实训报告结果
  • 手机建站平台淘客wordpress open sans
  • 辽源市网站建设朝阳凌源网站建设
  • 福州网站建设资讯上海软件网站建设
  • 长沙营销型网站建设费用如何在国外网站开发新客人
  • 用人名做网站域名房产cms系统
  • 工程网站开发上海闵行是郊区吗
  • 网站开发市场成本wordpress 登录接口
  • 优秀平面设计网站wap网站源码下载