#!/usr/bin/env python # -*- coding:utf-8 -*- import pandas as pd import numpy as np def main(): dates = pd.date_range("20180301", periods=8) df = pd.DataFrame(np.random.randn(8, 5), index=dates, columns=list('ABCDE')) # randn正态分布中随机数# print (df) df1 = df.reindex(index=dates[:4], columns=list("ABCD") + ["G"])#reindex()数据符合新的索引来构造一个新的对象 # 使它符合新的索引,如果索引的值不存在就填入缺失值 # # method:插值填充方法method: {None, ‘backfill’ / ’bfill’, ‘pad’ / ’ffill’, ‘nearest’} # # ffill / pad向前或进位填充,bfill / backfill向后或进位填充 # # #reindex可以改变(行)索引,列或两者。当只传入一个序列时,结果中的行被重新索引,使用columns可以将列进行索引# # fill_value:引入的缺失数据值;limit:填充间隙;如果新索引与旧的相等则底层数据不会拷贝。默认为True(即始终拷贝); #level:在多层索引上匹配简单索引
df1.loc[dates[0]:dates[1], "G"] = 1 # 第一行、 第二行G列值为1 ,第三行第四行为缺省值NaN# print (df1) print (df1.dropna()) # 删除空值 # print (df1.fillna(value=2)) # 填充空值 # if __name__ == "__main__": main()