from pandas import Series, DataFrame

# Series接收list或dict作为一维数据
#两个属性:values, index
#①
s1 = Series([4,7,-5,3])
print(s1.values) #值
print(s1.index) #序列号
s1.index = ['a','b','c','d']
print(s1)
#②
s2 = Series({'Ohio': 35000, 'Texas': 71000, 'Oregon': 16000, 'Utah': 5000})
print(s2) #DataFrame接收matrix或dict(要求item为list)作为二维数据
# 三个属性:values, index, columns
#①
data = {'state': ['Ohio', 'Ohio', 'Ohio', 'Nevada', 'Nevada'],
'year': [2000, 2001, 2002, 2001, 2002],
'pop': [1.5, 1.7, 3.6, 2.4, 2.9]}
f1 = DataFrame(data)
print(f1.values) #值
print(f1.index) #行序列(号)
print(f1.columns)#列序列(号)
#②
f2 = DataFrame(data, columns=['year', 'state', 'pop'])
#③
f3 = DataFrame(data, columns=['year', 'state', 'pop', 'debt'], index=['one', 'two', 'three', 'four', 'five']) #重要的功能
##1.重新索引
#① Series
s1 = Series([4.5, 7.2, -5.3, 3.6], index=['d', 'b', 'a', 'c'])
s2 = s1.reindex(['a', 'b', 'c', 'd', 'e'])
s3 = s1.reindex(['a', 'b', 'c', 'd', 'e'], fill_value=0) s4 = Series(['blue', 'purple', 'yellow'], index=[0, 2, 4])
s5 = s4.reindex(range(6), method='ffill') #② DataFrame
f1 = DataFrame(np.arange(9).reshape((3, 3)), index=['a', 'c', 'd'], columns=['Ohio', 'Texas', 'California'])
f2 = f1.reindex(index=['a', 'b', 'c', 'd']) #行序列(号)
f3 = f1.reindex(columns=['Texas', 'Utah', 'California'])#列序列(号) ##2.索引,挑选和过滤
# .at, .iat, .loc, .iloc .ix # 1)类似 ndarry 的索引操作
#① Series
s1 = Series(np.arange(4.), index=['a', 'b', 'c', 'd'])
s1['b']
s1[1]
s1[2:4]
s1[['b', 'a', 'd']]
s1[[1, 3]]
s1[s1 < 2]
s1['b':'c']
s1['b':'c'] = 5 #② DataFrame
df = DataFrame(np.arange(16).reshape((4, 4)), index=['Ohio', 'Colorado', 'Utah', 'New York'],
columns=['one', 'two', 'three', 'four'])
df['two']
df[['three', 'one']]
df[:2]
df[df['three'] > 5]
df > 5
df[df['three'] < 5] = 0 # 2)标签索引
#① Series #② DataFrame
df.ix['Colorado', 'three']
df.ix['Colorado', ['three', 'four']]
df.ix[['Colorado', 'Utah'], ['three', 'four']]
df.ix[['Colorado', 'Utah'], [2, 0, 3]]
df.ix['Colorado']
df.ix[2]
df.ix[:'Utah', 'three']
df.ix[df.three > 5, :3]

pandas 练习的更多相关文章

  1. pandas基础-Python3

    未完 for examples: example 1: # Code based on Python 3.x # _*_ coding: utf-8 _*_ # __Author: "LEM ...

  2. 10 Minutes to pandas

    摘要   一.创建对象 二.查看数据 三.选择和设置 四.缺失值处理 五.相关操作 六.聚合 七.重排(Reshaping) 八.时间序列 九.Categorical类型   十.画图      十一 ...

  3. 利用Python进行数据分析(15) pandas基础: 字符串操作

      字符串对象方法 split()方法拆分字符串: strip()方法去掉空白符和换行符: split()结合strip()使用: "+"符号可以将多个字符串连接起来: join( ...

  4. 利用Python进行数据分析(10) pandas基础: 处理缺失数据

      数据不完整在数据分析的过程中很常见. pandas使用浮点值NaN表示浮点和非浮点数组里的缺失数据. pandas使用isnull()和notnull()函数来判断缺失情况. 对于缺失数据一般处理 ...

  5. 利用Python进行数据分析(12) pandas基础: 数据合并

    pandas 提供了三种主要方法可以对数据进行合并: pandas.merge()方法:数据库风格的合并: pandas.concat()方法:轴向连接,即沿着一条轴将多个对象堆叠到一起: 实例方法c ...

  6. 利用Python进行数据分析(9) pandas基础: 汇总统计和计算

    pandas 对象拥有一些常用的数学和统计方法.   例如,sum() 方法,进行列小计:   sum() 方法传入 axis=1 指定为横向汇总,即行小计:   idxmax() 获取最大值对应的索 ...

  7. 利用Python进行数据分析(8) pandas基础: Series和DataFrame的基本操作

    一.reindex() 方法:重新索引 针对 Series   重新索引指的是根据index参数重新进行排序. 如果传入的索引值在数据里不存在,则不会报错,而是添加缺失值的新行. 不想用缺失值,可以用 ...

  8. 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍

    一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...

  9. pandas.DataFrame对行和列求和及添加新行和列

    导入模块: from pandas import DataFrame import pandas as pd import numpy as np 生成DataFrame数据 df = DataFra ...

  10. pandas.DataFrame排除特定行

    使用Python进行数据分析时,经常要使用到的一个数据结构就是pandas的DataFrame 如果我们想要像Excel的筛选那样,只要其中的一行或某几行,可以使用isin()方法,将需要的行的值以列 ...

随机推荐

  1. 【转】Visual Studio 非常实用的调试技巧

    下面有从浅入深的6个问题,您可以尝试回答一下 一个如下的语句for (int i = 0; i < 10; i++){if (i == 5)j = 5;},什么都写在一行,你怎么在j=5前面插入 ...

  2. windows 我的电脑右键 无法打开管理窗口

    保存成reg文件,执行一下就好了. Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\CLSID\{20D04FE0-3AEA-1069- ...

  3. 如何创建可扩展表视图中的iOS 学习和拓展优化(有待更新)

    首先介绍老外的文章:<How To Create an Expandable Table View in iOS>这是老外用Swift实现 的,对应的老外github项目源码:https: ...

  4. ASP.NET @Page指令属性(vs2010)

    最近看一篇好文章,摘抄下来. 原文出处:http://www.cnblogs.com/zhaozhan/archive/2010/05/01/1725819.html @Page指令位于每个ASP.N ...

  5. IOS沙盒Files目录说明和常用操作

    Ios沙盒目录清单 1 Documents 用于存储用户生成的文件.其他数据及其他程序不能重新创建的文件,默认文件通过iCloud自动备份.如果不需要iCloud备份,则设置标记 NSURLIsExc ...

  6. (ios实战) UINavigationBar 返回按钮 文本自定义实现

    在实际开发过程, 我们使用navigationController时,上一个标题过长,导致下一个界面的返回按钮文本过长,比较难看,如果标题取名过短,又不能完全表达含义. 下面时如何实现返回按钮的Tit ...

  7. Effective Java 35 Prefer annotations to naming patterns

    Disadvantages of naming patterns Typographical errors may result in silent failures. There is no way ...

  8. Tomcat 服务器版本的区别以及下载与安装

    Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache.Sun 和其他一些公司及个人共同开发而成.由于有了 ...

  9. SQL 分页查询的四种方法

    方法一 假设现在有这样的一张表: CREATE TABLE test ( id int primary key not null identity, names ) ) 然后向里面插入大约100条数据 ...

  10. SSIS OLEDB COMMAND RULES

    The oledb commad transformation prepare the wrong data type for the parameter. With my test, I have ...