打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
统计师的Python日记:第四天的补充


【第4天:欢迎光临Pandas】


第四天学习了Pandas,感受了Pandas数据的DataFrame数据格式的魅力:




看起来就像excel一样清爽!


但是后来我遇到了两个问题:


1)之前只学习了用字典来生成,列表可以生成吗?


2)字典生成也存在问题:想把{'A': 'a', 'B': 'b'}变成DataFrame就不行:


import pandas as pd


>>> df = pd.DataFrame({'A': 'a', 'B': 'b'})


Traceback (most recent call last):

  File '', line 1, in

    df = pd.DataFrame({'A': 'a', 'B': 'b'})

  File 'C:\Python27\lib\site-packages\pandas\core\frame.py', line 226, in __init__

    mgr = self._init_dict(data, index, columns, dtype=dtype)

  File 'C:\Python27\lib\site-packages\pandas\core\frame.py', line 363, in _init_dict

    dtype=dtype)

  File 'C:\Python27\lib\site-packages\pandas\core\frame.py', line 5158, in _arrays_to_mgr

    index = extract_index(arrays)

  File 'C:\Python27\lib\site-packages\pandas\core\frame.py', line 5197, in extract_index

    raise ValueError('If using all scalar values, you must pass'

ValueError: If using all scalar values, you must pass an index



对这两个问题,查了资料,得到解决,现记录在此:


1)列表生成DataFrame:


直接DataFrame就可以,和字典一样



但是问题来了:


“索引名和变量名能改一下吗?”


自定义索引名,就用第四天里学的index=[ ]即可:



那么想自定义变量名呢?


哎这个,您啊,可以关注第五天的日记,我继续分享~


2)字典生成DataFrame的问题


import pandas as pd


>>> df = pd.DataFrame({'A': 'a', 'B': 'b'})


不成功,得到一堆错误提示


第四天学的就是用字典来生成DataFrame,怎么到这里不成功了?


您看看第四天的例子中的字典是什么样的:


>>> pop

{'city': ['Chongqin', 'Shanghai', 'Beijing', 'Chengdu', 'Tianjin', 'Guangzhou', 'Baoding', 'Harbin', 'Suzhou', 'Shenzhen'], 'pop': [2884.6, 2301.9, 1961.2, 1404.8, 1293.8, 1270.1, 1119.4, 1063.6, 1046.6, 1035.8]}


这个例子中,我传入的字典是pop,它的形式是:


{ ‘city’:['chongqin', 'shanghai'], ‘pop': [2884.6, 2301.9] }


而出错的那个是这样的:


{'A': 'a', 'B': 'b'}


区别在哪呢?该不会是[ ]的问题吧——是的。


所以,将字典生成DataFrame,您可以用{'A':[ 'a'], 'B': ['b']},当然也不一定非要这样,所以三种方法是可以成功的:


第一种:{'A':['a'], 'B': ['b']}

>>> df = pd.DataFrame({'A': ['a'], 'B': ['b']})

>>> df

   A  B

0  a  b


第二种:传入索引index

>>> df = pd.DataFrame({'A': 'a', 'B': 'b'}, index=[0])

>>> df

   A  B

0  a  b


第三种:DataFrame([dict])

>>> df = pd.DataFrame([{'A': 'a', 'B': 'b'}])

>>> df

   A  B

0  a  b


欢迎继续关注【统计师的Python日记】系列


【第1天:谁来给我讲讲Python?】


【第2天:再接着介绍一下Python呗】


【第3天:Numpy你好】


【第4天:欢迎光临Pandas】



本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
【学习笔记】python实现excel数据处理
第94天:数据分析之 pandas 初步
Python 数据处理库 pandas 入门教程
Python数据分析之pandas学习(一)
Python数据分析-Pandas
Pandas数据结构
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服