Python 数据分析 pandas

Pandas是一个开源的Python数据分析库。

既然是读入Excel,那个读取到的结果也必然是Excel的形式:

Excel的形式为:

对Excel形式的说明:


Pandas把结构化数据分为了三类:

1、Series : 一维序列,可视作为没有column名的、只有一个column的DataFrame

eg:

import pandas as pd
import numpy as ny

path = '/home/gll/Desktop/chapter3/demo/data/catering_sale.xls'
readFile=pd.read_excel(path)

b=pd.Series([1,2,3,5,8])
print b

注意:pandas会默认创建整型索引(从0开始)

输出结果:

0 1
1 2
2 3
3 5
4 8
dtype: int64

对应的Excel为:

2、DataFrame : 为多column并schema化的二维结构化数据,可视作为Series的容器 ( container ) ;

eg: 
import pandas as pd
import numpy as ny

path = '/home/gll/Desktop/chapter3/demo/data/catering_sale.xls'
readFile=pd.read_excel(path)

b=pd.Series([1,2,3,5,8])
c=pd.Series(['a','b','c','t','f'])
d=pd.DataFrame([b,c])
print d

输出的结果为:
   0 1 2 3 4
0 1 2 3 5 8

1 a b c t f

对应的Excel为:

自己理解:一维数组的形式为:[1,2,3,5,8] ;,然而,Series的形式是把一维数组竖着写(即以列的形式存在),并且添加了索引(因为只有一列,所以没有列索引,只添加行索引,这个索引可以是自己设置的,自己不设置时为默认);DataFrame的形式是多个Series,但是和Series不同的是,DataFrame可能存储多个Series(因为Series以列的形式存在,所以DataFrame就是多列),所以可能有多列,因此,它不仅有行索引,同时还有列索引(同理:如果不设置索引,就是默认的索引)

注意:

pandas.read_excel();返回的就是DataFrame

eg:

import pandas as pd
import numpy as ny

path = '/home/gll/Desktop/chapter3/demo/data/catering_dish_profit.xls'
readFile=pd.read_excel(path)
print readFile
输出结果为:

  菜品ID  菜品名    盈利
0  17148   A1  9173
1  17154   A2  5729
2    109   A3  4811
3    117   A4  3594
4  17151   A5  3195
5     14   A6  3026
6   2868   A7  2378
7    397   A8  1970
8     88   A9  1877
9    426  A10  1782


3、 Panel : 为三维的结构化数据,可是作为DataFrame的容器 ;

DataFrame中的方法:

.index 为行索引(即行标号)

.columns 为列名称(label即列标)

.dtypes  为列数据类型(数据集中每一列的数据类型)

.values  为获取DataFrame中的值(list的形式返回)

import pandas as pd
import numpy as ny

path = '/home/gll/Desktop/chapter3/demo/data/catering_dish_profit.xls'
readFile=pd.read_excel(path)
f=pd.DataFrame({'a':[1,1,1],'b':[1,2,2],'c':[1,2,3]})
print '='*10,'f','='*10
print f
print '='*10,'f.dtypes','='*10
print f.dtypes
print '='*10,'f.values','='*10
print f.values
print '='*10,'f.columns','='*10
print f.columns
print '='*10,'f.index','='*10
print f.index
输出结果为:

========== f ==========
   a  b  c
0  1  1  1
1  1  2  2
2  1  2  3
========== f.dtypes ==========
a    int64
b    int64
c    int64
dtype: object
========== f.values ==========
[[1 1 1]
 [1 2 2]
 [1 2 3]]
========== f.columns ==========
Index([u'a', u'b', u'c'], dtype='object')
========== f.index ==========
RangeIndex(start=0, stop=3, step=1)


选择操作:

Pandas不但可以根据列名称选择,还可以根据列所在的position选择。相关函数为:

.loc  基于列label,可选取特定行(根据行index)

.iloc  基于行/列的position

.at  根据指定行index及列label ,快速定位DataFrame 的元素

.iat 与at类似,不同的是根据position来定位的

.ix  为loc与iloc的混合体,既支持label 也支持 position


eg:


代码:

import pandas as pd
import numpy as ny

path = '/home/gll/Desktop/chapter3/demo/data/catering_dish_profit.xls'
readFile=pd.read_excel(path)
f=pd.DataFrame({'a':[1,1,1],'b':[1,2,2],'c':[1,2,3]})
print '='*10,'f','='*10
print f
print '='*10,'f.loc[1,\'c\']','='*10   
print f.loc[1,'c']
print '='*10,'f.iloc[0:2,1]','='*10
print f.iloc[0:2,1]
print '='*10,'f.at[1,\'c\']','='*10
print f.at[1,'c']
结果:
========== f ==========
   a  b  c
0  1  1  1
1  1  2  2
2  1  2  3
========== f.loc[1,'c'] ==========
2
========== f.iloc[0:2,1] ==========
0    1
1    2
Name: b, dtype: int64
========== f.at[1,'c'] ==========
2








### 回答1: Python数据分析中,pandas是一个非常重要的库,它提供了一种灵活、高效、易用的数据结构,可以帮助我们进行数据清洗、数据处理、数据分析等工作。下面是一些pandas实例: 1. 读取数据pandas可以读取多种格式的数据,如csv、excel、json等。使用read_csv、read_excel、read_json等函数可以读取相应格式的数据文件。 2. 数据清洗:pandas可以帮助我们清洗数据,如去除重复值、处理缺失值、替换异常值等。使用drop_duplicates、dropna、fillna、replace等函数可以实现相应的功能。 3. 数据分组:pandas可以将数据按照某些条件进行分组,然后对每组数据进行统计分析。使用groupby函数可以实现数据分组。 4. 数据聚合:pandas可以对数据进行聚合操作,如求和、求平均值、求最大值、求最小值等。使用sum、mean、max、min等函数可以实现相应的聚合操作。 5. 数据合并:pandas可以将多个数据集合并成一个数据集,可以按照某些条件进行合并。使用merge、concat等函数可以实现数据合并。 6. 数据可视化:pandas可以将数据进行可视化展示,如绘制柱状图、折线图、散点图等。使用plot函数可以实现数据可视化。 以上是一些pandas实例,希望对你有所帮助。 ### 回答2: Python数据分析的关键点之一是数据可以以各种方式被处理和探索。对于数据处理,Pandas是一个非常有用的Python库,它提供了各种功能和方法来处理不同类型的数据Pandas 对于大数据集提供了广泛的支持,使其能够在实践中使用。让我们来看一些Python数据分析Pandas实例,了解Pandas的主要功能和应用。 1. 读取数据Python中使用Pandas库导入数据集是很简单的。我们可以使用 read_csv() 函数来读取csv文件, read_excel() 函数来读取Excel文件等等。例如,以下代码可以读取CSV格式的数据: import pandas as pd data = pd.read_csv("data.csv") 2. 数据清洗 在数据的每个行或列中,我们有时会遇到缺失值或不必要的数据。在这种情况下,我们可以使用 Pandas 来清洗数据。以下是一些数据清洗的示例: # 删除列 data = data.drop('column_name', axis=1) # 删除行 data = data.drop(data.index[[0,1,2]]) # 替换NaN值 data = data.fillna(method="ffill") # 去除重复值 data = data.drop_duplicates() 3. 数据分组和聚合 Pandas库提供了一些函数来处理分组和聚合数据Pandas中的groupby()方法可以将数据按照一个或多个列进行分组。以下是一些数据分组和聚合的示例: # 按照列分组 grouped = data.groupby('column_name') # 按照多列分组 grouped = data.groupby(['col1', 'col2']) # 聚合 aggregated = grouped.aggregate(np.sum) 4. 数据可视化 数据可视化是数据分析的最重要环节之一。在Pandas中,提供了许多有用的可视化工具。因此,我们可以在我们的分析中使用这些库来更好地理解数据。以下是一些数据可视化的示例: # 绘制柱状图 data.plot(kind='bar') # 绘制折线图 data.plot(kind='line') # 绘制散点图 data.plot(kind='scatter') 总结 在Python数据分析中,Pandas是一个强大的工具,可以让我们方便、高效地处理、分析和探索数据。通过将数据读入Pandas,清洗数据,聚合数据并将结果可视化,我们可以更好地理解和分析数据集。以上是一些Python数据分析Pandas实例的简单介绍,希望能够对你在数据分析方面有所帮助。 ### 回答3: Python是一种非常流行的编程语言,适用于各种数据分析和科学计算。PandasPython的一个开源库,广泛用于数据分析数据处理。Pandas提供了许多数据结构和函数,使得数据分析和操作变得更加方便和高效。 Pandas的主要数据结构是Series和DataFrame。Series是一维数据结构,类似于Python的列,但具有更多的功能,例如索引、行标签和数据类型等。DataFrame是二维数据结构,类似于电子格,包含多个列和行,每列可以有不同的数据类型。 Pandas提供了多种操作数据的函数和方法,例如处理缺失值、删除重复行、拆分和合并数据等。其中,处理缺失值是数据分析中常见的问题之一,Pandas提供了fillna和dropna两个函数来处理缺失值。fillna函数用于用指定的值或方法填充缺失值,而dropna函数可以删除包含缺失值的行或列。 除了数据预处理,Pandas还支持各种数据分析和绘图功能。例如,可以使用groupby函数按组分析数据,使用pivot_table函数创建数据透视,使用merge函数合并数据集,还可以使用plot函数绘制各种图,例如直方图、折线图和散点图等。 总的来说,PandasPython数据分析的重要工具之一,它提供了丰富的功能和易用的API,使得数据分析变得更加高效和方便。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值