获取DataFrame所有列名
import pandas
dataFrame=pandas.read_excel(sourceFilePath)
keys=list(dataFrame.keys())
列切片
dataFrame=dataFrame[key]
行切片
curDataFrame=dataFrame[(dataFrame['时间']>=beginTime)&(dataFrame['时间']<endTime)]
排序
resultDataFrame.sort_values('时间', inplace=True)
resultDataFrame.sort_index(by='时间') args:ascending(default True),axis(default 0),by(default None)
批量赋值
dateFrame.loc[dateFrame[dateFrame['原始功率(kw)'] < 0].index, '原始功率(kw)'] = 0
批量值替换
dateFrame.loc[dateFrame[dateFrame['原始功率(kw)'] < 0].index, '原始功率(kw)'] =
dateFrame.loc[dateFrame[dateFrame['原始功率(kw)'] < 0].index, '预测功率(kw)']
空值处理
dataFrame.fillna('nan',inplace=True)
dataFrame.dropna(how='any',inplace=True)
应用函数
stripstr = lambda x: x.strip() if isinstance(x, unicode) else x
dataFrame=dataFrame.applymap(stripstr)
只在列上应用
dataFrame['姓名'] = dataFrame['姓名'].apply(stripstr)
统计方法
DataFrame.mean(axis=0,skipna=True)
count | 非 NA 值的数量 |
describe | 针对 Series 或 DF 的列计算汇总统计 |
min , max | 最小值和最大值 |
argmin , argmax | 最小值和最大值的索引位置(整数) |
idxmin , idxmax | 最小值和最大值的索引值 |
quantile | 样本分位数(0 到 1) |
sum | 求和 |
mean | 均值 |
median | 中位数 |
mad | 根据均值计算平均绝对离差 |
var | 方差 |
std | 标准差 |
skew | 样本值的偏度(三阶矩) |
kurt | 样本值的峰度(四阶矩) |
cumsum | 样本值的累计和 |
cummin , cummax | 样本值的累计最大值和累计最小值 |
cumprod | 样本值的累计积 |
diff | 计算一阶差分(对时间序列很有用) |
pct_change | 计算百分数变化 |