一、导入pandas和numpy包
import numpy as np
import pandas as pd
二、载入数据
相对路径和绝对路径两种方式
df = pd.read_csv('train.csv')
df.head(3)
df = pd.read_csv('C:/Users/**/Desktop/hands-on-data-analysis-master/第一单元项目集合/train.csv')
read_csv常用参数:
参数 | 说明 |
header | 用作列名的行号,默认0,没有header行设置None |
index_col | 用作行索引的列编号或列名 |
names | 用于结果的列名列表 |
nrows | 需要读取的行数(从文件开始出算起) |
chunksize | 文件块的大小 |
三、查看数据基本信息
df.info() //查看数据的基本信息
df.head() //查看头部数据
df.tail() //查看尾部数据
df.isnull() //判断是否为空
四、保存数据
df.to_csv('train_chinese.csv', encoding = 'GBK')
//设置编码格式:GBK utf-8
五、Series和DataFrame
Series是⼀种类似于⼀维数组的对象,它由⼀组数据(各种 166 NumPy数据类型)以及⼀组与之相关的数据标签(即索引)组成。Series的字符串表现形式为:索引在左边,值在右边。
sdata = {'a':1, 'b':2, 'c':3, 'd':4} #大括号
s = pd.Series(sdata)
s
DataFrame是⼀个表格型的数据结构,它含有⼀组有序的列,每 列可以是不同的值类型(数值、字符串、布尔值等)。 DataFrame既有⾏索引也有列索引,它可以被看做由Series组成 的字典(共⽤同⼀个索引)。DataFrame中的数据是以⼀个或多 个⼆维块存放的(⽽不是列表、字典或别的⼀维数据结构)。
data = {'state': ['Ohio', 'Ohio', 'Ohio', 'Nevada', 'Nevada', 'Nevada'],
'year': [2000, 2001, 2002, 2001, 2002, 2003],'pop': [1.5, 1.7, 3.6, 2.4, 2.9, 3.2]}
example_2 = pd.DataFrame(data)
example_2
六、DataFrame相关数据操作
1、查看列名称:df.columns
2、查看某一列的所有值:
-
df.客舱
-
df['客舱']
3、删除某一列
del test_1['a']
test_1.drop(['a'], axis = 1, inplace = True )
//inplace = True 覆盖原表格
4、数据筛选
midage = df[(df['年龄']>10) & (df['年龄']< 50) ]
筛选指定行 -----loc iloc
midage.loc[[100,105,108], ['乘客等级', '乘客姓名', '性别']]
midage.iloc[[100,105,108], [2,3,4]] //通过行号索引行数据
七、数据排序
1、创建DataFrame
s = pd.DataFrame(np.arange(8).reshape(2,4),
index = [1,2],
columns = ['a', 'b', 'c', 'd'])
s.head()
2、按值排序
s.sort_values(by = 'b') //根据指定列升序排序
s.sort_values(by=['a', 'b'],ascending=False) //多列降序排序
3、按索引排序
s.sort_index() //索引默认升序排序
s.sort_index(axis = 1) #按列索引排序
s.sort_index(axis = 1, ascending=False) //列索引降序排序
4、两个DataFrame相加:对应的行和列相加,按照行、列标签名相加,没有对应的返回NaN
八、数据的描述
df.describe()