主要是对原数据(csv ,etc.)进行导入并处理,需要numpy和pandas这两个常用库。
import numpy as np
import pandas as pd
# load .csv data
df = pd.read_csv('train.csv')
df.head(3)
chunker = pd.read_csv('train.csv', chunksize=1000)
一旦数据量非常大,如果一次性读取是内存是无法承担,所以我们可以通过分块读取,而参数chunksize
为设置的块数。
df = pd.read_csv('train.csv', names=['乘客ID','是否幸存','仓位等级','姓名','性别','年龄','兄弟姐妹个数','父母子女个数','船票信息','票价','客舱','登船港口'],index_col='乘客ID',header=0)
df.head()
还可以通过先向表格中增加一行中文表头的信息,然后再删除原来英文的表头。
导入完数据之后,我们需要对数据的一些信息进行统计从而会之后的分析做准备。
df.info()
df.head(10)
df.tail(15)
df.isnull().head()
对于一个数据,还可以从这个数据是否具有异常值、是否存在噪音等。
df.to_csv('train_chinese.csv')
import numpy as np
import pandas as pd
sdata = {'Ohio': 35000, 'Texas': 71000, 'Oregon': 16000, 'Utah': 5000}
example_1 = pd.Series(sdata)
example_1
加载文件"test_1.csv",然后对比"train.csv",看看有哪些多出的列,然后将多出的列删除
经过我们的观察发现一个测试集test_1.csv有一列是多余的,我们需要将这个多余的列删去
思考:我们还可以通过drop()方法来对指定列或行进行删除:
test_1.drop(['a'],axis=1)
以"Age"为筛选条件,显示年龄在10岁以下的乘客信息。
以"Age"为条件,将年龄在10岁以上和50岁以下的乘客信息显示出来,并将这个数据命名为midage
将midage的数据中第100行的"Pclass"和"Sex"的数据显示出来
reset_index()作用为将df的原index_label作为新的一列留存,且列名为index,同时自动生成数字index。,如果不用这个函数,下面任务会变成:
使用loc方法将midage的数据中第100,105,108行的"Pclass",“Name"和"Sex"的数据显示出来
使用iloc方法将midage的数据中第100,105,108行的"Pclass”,"Name"和"Sex"的数据显示出来