一. pd.read_csv()中的参数parse_dates: parse_dates: 布尔值、由整数、名字、数列构成的数列、也可以为字典。(boolean or list of ints or names or list of lists or dict, default False)
意义:指定将某些列作为时间索引
- boolean. True -> 解析索引
- list of ints or names. e.g. If [1, 2, 3] -> 解析1,2,3列的值作为独立的日期列;
- list of lists. e.g. If [[1, 3]] -> 合并1,3列作为一个日期列使用
- dict, e.g. {‘foo’ : [1, 3]} -> 将1,3列合并,并给合并后的列起名为"foo"
data = https://www.it610.com/article/pd.read_csv("data.csv", sep = "\s+")
data.head()
【风速练习(parse_dates参数、apply()、isnull().sum()、.mean().mean())】
文章图片
利用parse_dates将前三列合并为一列,指定为新的日期列:
data = https://www.it610.com/article/pd.read_csv("data.csv", sep = "\s+", parse_dates = [[0,1,2]])
data.head()
文章图片
二. datetime.date()和.apply(function)
- 创建函数,将Yr_Mo_Dy列中的20xx改为19xx
def fix_century(x):
if x.year > 2000:
year = x.year - 100
else:
year = x.year
return datetime.date(year, x.month, x.day)data['Yr_Mo_Dy'] = data['Yr_Mo_Dy'].apply(fix_century)
datetime.date():创建date对象
三. pd.to_datetime()
- 将时间列的数据格式改为pandas的datetimeindex格式,再将此列设为表格的行
# transform Yr_Mo_Dy it to date type datetime64
data["Yr_Mo_Dy"] = pd.to_datetime(data["Yr_Mo_Dy"])# set 'Yr_Mo_Dy' as the index
data = https://www.it610.com/article/data.set_index('Yr_Mo_Dy')data.head()
四. isnull().sum()
- 求每一列对应的缺失值总数:
pandas中的缺失值函数isnull()
isnull()直接返回布尔值:缺失值-True;不缺失-False
isnull().any():判断哪些列包含缺失值
isnull().sum(): 生成每一列缺失值的总数
data.isnull().sum()
五. .mean().mean()
- 对于全体数据求风速的平均值:
e.g.:
文章图片
date.mean().mean()