pandas常用方法总结

首先安装pandas模块

from matplotlib import pyplot as plt
import numpy as np
import pandas as pd
from numpy import nan as NA
from pandas import DataFrame, Series

%matplotlib inline

一、pandas导入

# DataFrame
# 本质上就是一个二维数组,用index定位行,用columns定位列。
#           col_1 col_2 ... col_n
#  index_1  x11   x12       x1n 
#  index_2  x21   x22       x2n
#  ...
#  index_m  xm1   xm2       xmn
data = {'state': ['Ohio', 'Ohio', 'Ohio', 'Nevada', 'Nevada'],
        'year': [2000, 2001, 2002, 2001, 2002],
        'pop': [1.5, 1.7, 3.6, 2.4, 2.9]} # key代表列的名字,对应的数组就是这个列的值。
frame = DataFrame(data)
frame

frame2 = DataFrame(data, 
                   columns=['year', 'state', 'pop', 'debt'], # 匹配不到的行和列设置为None
                   index=['one', 'two', 'three', 'four', 'five']) # 使用index指定列
frame2

print(frame2.year) # 快速访问列,不管是一行还是一列,返回的是一个Series。
print(frame2['pop']) # 和普通二维数组非常不一样!!!

frame.set_index('year') # 列变成索引

二、切片

# iloc用数字索引访问行和列(左闭右开区间),ix方法已经被淘汰。
print(frame2.iloc[1,]) # 访问第1行
print(frame2.iloc[:,2]) # 访问第2列pop
print(frame2.iloc[1:3, 0:3]) #第1/2行,第0/1/2列切片
# loc用名字索引访问行和列(闭区间)
print(frame2.loc['one',])
print(frame2.loc['one':'three',])
print(frame2.loc[:,'state'])
print(frame2.loc['two':'four','year':'debt'])
# 使用iloc或loc选择指定的行列组合
frame2.iloc[[0, 1, 3], [0, 2]]
frame2.loc[['one', 'three', 'four'], ['state', 'pop']]

三、新增列

frame2['eastern'] = (frame2.state == 'Ohio')
frame2
frame2['big'] = (frame2['pop'] > 2.5)
frame2

frame = DataFrame(np.arange(9).reshape((3, 3)),
                  index=['a', 'c', 'd'],
                  columns=['Ohio', 'Texas', 'California'])
print(frame)
frame2 = frame.reindex(['a', 'b', 'c', 'd']) # 数量不用匹配,没有的自动填充NaN。
states = ['Texas', 'Utah', 'California']
frame3 = frame2.reindex(columns=states) # 重新指定行/列索引顺序
frame3




评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值