DataFrame
DataFrame是一种二维的数据结构,非常接近于电子表格或者类似MysqL的数据库形式。它的竖行称之为columns,横行与Series一样,称之为index,也就是说可以通过columns和index来进行确定位置。
#导入模块 from pandas import Series,DataFrame
- 定义DataFrame方法
- 1、使用dict字典
#定义DataFrame #方式一:使用dict字典 data = {"name":['google','baidu','yahoo'],"marks":[100,200,300],"price":[1,2,3]} >>> data {'name': ['google', 'baidu', 'yahoo'], 'marks': [100, 200, 300], 'price': [1, 2, 3]} f1 = DataFrame(data) >>> f1 name marks price 0 google 100 1 1 baidu 200 2 2 yahoo 300 3
字典的键(“name”,“marks”,“price”)就是DataFrame的columns的值,字典中每个键的值是一个列表,它们就是那一竖列中的具体填充数据。上面的定义没有确定索引,因此使用从0开始的整数。从结果中可以明确的看出,这是一个二维的数据结构(类似excel或者MysqL中的查看效果)。
1、上面的例子中,columns的顺序没有规定,但在DataFrame中columns的顺序可以被规定(字典中不可以)。做法如下:
f2 = DataFrame(data,columns=['name','marks','price']) >>> f2 name marks price 0 google 100 1 1 baidu 200 2 2 yahoo 300 3
2、DataFrame数据的索引也可以自定义。做法如下:
f3 = DataFrame(data,columns=['name','marks','price'],index=['a','b','c']) >>> f3 name marks price a google 100 1 b baidu 200 2 c yahoo 300 3
- 2、“字典套字典”方法
#第二种方式:“字典套字典” >>>newdata = {'lang':{'first':'python','second':'java'},'price':{'first':5000,'second':2000}} >>> f4 = DataFrame(newdata) >>> f4 lang price first python 5000 second java 2000
字典中就规定好数列名字(第一层键)和每横行索引(第二层字典键)以及对应的数据(第二层字典值),也就是在字典中规定好了每个数据格子中的数据,没有规定的都是空的。
>>> f3['name'] a google b baidu c yahoo Name: name, dtype: object
可以对某一列单独赋值,“点对点”赋值
- 取横行元素,做法:
>>>f3.loc['a'] name google marks 100 price 1 Name: a, dtype: object
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。