虽然之前东一榔头,西一棒槌地学过一些pandas和numpy,但学得实在是很没有章法,用起来也很不顺手,所以决定跟着kaggle的课程重新过一遍。本次先主要学习pandas。
创建和读写
在进行数据处理前,首先我们要有数据。
创建读写对象
在pandas中主要有两种数据类型,一种叫series,一种叫dataframe。我们先来看dataframe。
Dataframe实际上就是一张用来填数据的表,在创建的时候一般使用字典结构。
import pandas as pd
data = {
'name':['Mike', 'Rose'], 'age':[20,19]}
df = pd.DataFrame(data)
可以看到dataframe中可以存储任意类型的数据,可以是字符串也可以是整数。
创建后字典中的key值会是表格中的列名,而value值则会对应每一个entry(每一行)中的相应值。
这时候我们的列名是自己规定的,但是行名(index)只是一个默认生成的0,1,2,…的序列,如果我们想要自定义行名,该怎么做呢?
很简单,只要在创建dataframe时,传入一个Index对象就可以了。
data2 = {
'name':['Mike', 'Rose'], 'age':[20,19]}
df2 = pd.DataFrame(data2, index = ['user1', 'user2'])
这时候我们就会得到一个行名和列名都是自定义的dataframe。
现在来说说Series,它实际上就是一个数据序列。在我们的dataframe中,每一列都可以看成是一个series。
创建它的方式和dataframe差不多,只是要注意我们是没有列名的,因为只有一列,所以我们只能规定一个统一的name作为这个series的名字。
data3 = [_ for _ in range(3)]
sr = pd.Series(data3, index = ['开始','过程','结束'], name = 'mySeries'