使用pandas进行数据分析-pandas库介绍之DataFrame基本操作

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

  字典中就规定好数列名字(第一层键)和每横行索引(第二层字典键)以及对应的数据(第二层字典值),也就是在字典中规定好了每个数据格子中的数据,没有规定的都是空的。

  •   DataFrame对象的columns属性,能够显示元素具有的columns名称。并且,还可以通过下面类似字典的方式,得到某竖列的全部内容:
>>> 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

  

猜你喜欢

转载自www.cnblogs.com/cola-1998/p/10803008.html