码迷,mamicode.com
首页 > 编程语言 > 详细

Python 数据处理扩展包: pandas 模块的DataFrame介绍

时间:2016-04-19 06:13:34      阅读:471      评论:0      收藏:0      [点我收藏+]

标签:

DataFrame是Pandas中的一个表结构的数据结构,包括三部分信息,表头(列的名称),表的内容(二维矩阵),索引(每行一个唯一的标记)。

一、DataFrame的创建

有多种方式可以创建DataFrame,下面举例介绍。

例1: 通过list创建

>>> import pandas as pd
>>> df = pd.DataFrame([[1,2,3],[4,5,6]])
>>> df
   0  1  2
0  1  2  3
1  4  5  6

[2 rows x 3 columns]

上面代表,创建了一个2行3列的表格,创建时只指定了表格的内容(通过一个嵌套的list),没有指定列名和索引。
这时列名就自动为 0,1,2 ;索引自动为数值0,1.

我们可以指定列表和索引,如:

>>> df = pd.DataFrame([[1,2,3],[4,5,6]],index=[row1,row2],columns=[c1,c2,c3])
>>> df
      c1  c2  c3
row1   1   2   3
row2   4   5   6

[2 rows x 3 columns]

可以看出,上面代码通过index和 columns参数指定了索引和列名。

例2:创建例子

>>> import numpy as np
>>> dates = pd.date_range(20121001,periods=6)
>>> df = pd.DataFrame(np.random.randn(6,4) , index = dates,columns=list(abcd))
>>> df
                   a         b         c         d
2012-10-01 -0.236220  0.586985  0.784953 -0.507129
2012-10-02 -1.020807 -1.316997 -0.747997  1.909333
2012-10-03  0.085208 -0.281736  1.112287  1.572577
2012-10-04  0.008708 -0.925711 -0.615752 -1.183397
2012-10-05  1.158198 -1.393678  0.586624  0.202499
2012-10-06  1.149878 -2.383863  1.646403  1.647935

[6 rows x 4 columns]

上面代码创建的dates是个时间索引,np.random.randn 方法创建一个6行4列的随机数矩阵。
最后的df使用 dates作为索引,使用np.random.randn 方法创建的矩阵作为内容,使用 list(‘abcd‘)作为列名。

 

二、 DataFrame的一些基本操作

 

1、获取数据的行数

len(df)

len(df.index)

 

2、显示索引、列和底层的numpy数据

>>> df.index
<class pandas.tseries.index.DatetimeIndex>
[2012-10-01, ..., 2012-10-06]
Length: 6, Freq: D, Timezone: None
>>> df.columns
Index([ua, ub, uc, ud], dtype=object)
>>> df.values
array([[-0.2362202 ,  0.58698529,  0.78495289, -0.50712897],
       [-1.02080723, -1.31699704, -0.74799734,  1.90933343],
       [ 0.08520807, -0.28173589,  1.11228743,  1.57257716],
       [ 0.00870768, -0.92571109, -0.6157519 , -1.18339719],
       [ 1.15819829, -1.39367835,  0.586624  ,  0.20249899],
       [ 1.14987847, -2.38386297,  1.64640287,  1.64793523]])

说明,这个例子中的df使用的是上面创建的 DataFrame对象

 

Python 数据处理扩展包: pandas 模块的DataFrame介绍

标签:

原文地址:http://www.cnblogs.com/51kata/p/5406355.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!