Python 1 Pandas
[TOC]
数据类型相关
在处理脏数据的时候:
通过data[col][raw].dtype
来查看元素的类型
通过data[col][raw].astype = specific_data_type
来切换单元格的属性
截取
1).loc,.iloc,.ix,只加第一个参数如.loc([1,2]),.iloc([2:3]),.ix[2]…则进行的是行选择 2).loc,.at,选列是只能是列名,不能是position 3).iloc,.iat,选列是只能是position,不能是列名 4)df[]只能进行行选择,或列选择,不能同时进行列选择,列选择只能是列名。
sex tip total_bill
0 Female 1.01 16.99
1 Male 1.66 10.34
2 Male 3.50 23.68
3 Male 3.31 23.68
4 Female 3.61 24.59
print df.loc[1:3, ['total_bill', 'tip']]
print df.loc[1:3, 'tip': 'total_bill']
print df.iloc[1:3, [1, 2]]
print df.iloc[1:3, 1: 3]
total_bill tip
1 10.34 1.66
2 23.68 3.50
3 23.68 3.31
--------------------
tip total_bill
1 1.66 10.34
2 3.50 23.68
3 3.31 23.68
--------------------
tip total_bill
1 1.66 10.34
2 3.50 23.68
--------------------
tip total_bill
1 1.66 10.34
2 3.50 23.68
拼接 – concat
axis=0
纵向拼接
axis=1
横向拼接【横向拼接的索引问题】
-
忽略索引的:那就让两个索引 => 通过
reset_index()
来讲提取出来的数据重新排列index-
最后效果
X Y
-
-
不忽略索引的:就直接让他们保持原来的索引
-
最后效果
X NAN
NAN Y
-
拼接 – merge(融合)
pd.merge(left_data, right_data, on='same_attribute', how='left')
left_data和right_data左右横向拼接
读取
1、读取.csv
data = pd.read_csv('path.csv')
2、读取被压缩成.zip
的.csv
data = pd.read_csv('path.zip', sep='\t')
3、读取.json
data = pd.read_json('path.json', lines=True)