python数据分析(pandas入门)

1、pandas数据结构之DataFrameDataFrame生成方式:1、从另一个DataFrame创建。2、从具有二维形状的NumPy数组或数组的复合结构生成。3、使用Series创建。4、从CSV之类文件生成。下面介绍DataFrame的简单用法:a):读取文件代码:from pandas.io.parsers import read_csvdf=read_csv(
摘要由CSDN通过智能技术生成

1、pandas数据结构之DataFrame

DataFrame生成方式:1、从另一个DataFrame创建。2、从具有二维形状的NumPy数组或数组的复合结构生成。3、使用Series创建。4、从CSV之类文件生成。下面介绍DataFrame的简单用法:

a):读取文件
代码:
from pandas.io.parsers import read_csv
df=read_csv("H:\Python\data\WHO.csv")
print "DataFrame:",df
运行结果(只截取部分):
DataFrame:                       Country  CountryID  Continent  \
0                 Afghanistan          1          1   
1                     Albania          2          2   
2                     Algeria          3          3   
3                     Andorra          4          2   
4                      Angola          5          3   

b):得到形状数据
代码:
print "Shape:",df.shape #大小
print "Length:",len(df)  #长度
结果:
Shape: (202, 358)
Length: 202

c):得到列标题及类型数据
代码:
print "Column Headers",df.columns #得到每列的标题
print "Data type",df.dtypes   #得到每列数据的类型
结果(截取部分)
Column Headers Index([u'Country', u'CountryID', u'Continent',
       u'Adolescent fertility rate (%)', u'Adult literacy rate (%)',
       u'Gross national income per capita (PPP international $)',
       u'Net primary school enrolment ratio female (%)',
       u'Net primary school enrolment ratio male (%)',
       u'Population (in thousands) total',
       u'Population annual growth rate (%)',
       ...
       u'Total_CO2_emissions', u'Total_income', u'Total_reserves',
       u'Trade_balance_goods_and_services', u'Under_five_mortality_from_CME',
       u'Under_five_mortality_from_IHME', u'Under_five_mortality_rate',
       u'Urban_population', u'Urban_population_growth',
       u'Urban_population_pct_of_total'],
      dtype='object', length=358)
Data type Country                                                                             object
CountryID                                                                            int64
Continent                                                                            int64
Adolescent fertility rate (%)                                                      float64
Adult literacy rate (%)                                                            float64
Gross national income per capita (PPP international $)                             float64
Net primary school enrolment ratio female (%)                                      float64
Net primary school enrolment ratio male (%)                                        float64

d):索引
代码:
print "Index:",df.index
结果:
Index: RangeIndex(start=0, stop=202, step=1)

e):values,非数值数据标位nan
代码:
print "Vales:",df.values
结果
Vales: [['Afghanistan' 1L 1L ..., 5740436.0 5.44 22.9]
 ['Albania' 2L 2L ..., 1431793.9 2.21 45.4]
 ['Algeria' 3L 3L ..., 20800000.0 2.61 63.3]
 ..., 
 ['Yemen' 200L 1L ..., 5759120.5 4.37 27.3]
 ['Zambia' 201L 3L ..., 4017411.0 1.95 35.0]
 ['Zimbabwe' 202L 3L ..., 4709965.0 1.9 35.9]]


2、pandas数据结构之Series

pandas的Series数据结构是由不同类型的元素组成的一维数组,该数据结构也具有标签,创建方式有:由Python字典创建;由numpy数组创建;由单个标量值创建。

a):类型。当选中DataFrame的一列时,得到的是一个Series型的数据。
代码:
country_df=df["Country"]
print "Type df:",type(df)
print "Type country_df:",type(country_df)
结果:
Type df: <class 'pandas.core.frame.DataFrame'>
Type country_df: <class 'pandas.core.series.Series'>

b):属性。pandas的Series数据结构不仅共享了DataFrame的一些属性,还提供与名称相关的一个属性。
代码:
print "Series Shape:",country_df.shape  #获取列的形状
print "Series index:",country_df.index   #获取索引
print "Series values:",country_df.values  #获取该列的所有值
print "Series name:",country_df.name   #获取列名(标题)
结果:
Series Shape: (202L,)
Series index: RangeIndex(start=0, stop=202, step=1)
Series values: ['Afghanistan' 'Albania' 'Algeria' 'Andorra' 'Angola' 'Antigua and Barbuda'
 'Argentina' 'Armenia' 'Australia' 'Austria' 'Azerbaijan' 'Bahamas'
 'Bahrain' 'Bangladesh' 'Barbados' 'Belarus' 'Belgium' 'Belize' 'Benin'
 'Bermuda' 'Bhutan' 'Bolivia' 'Bosnia and Herzegovina' 'Botswana' 'Brazil'
 'Brunei Darussalam' 'Bulgaria' 'Burkina Faso' 'Burundi' 'Cambodia'
 'Cameroon' 'Canada' 'Cape Verde' 'Central African Republic' 'Chad' 'Chile'
 'China' 'Colombia' 'Comoros'
  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值