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)
Posted on Jan 28, 2020