python处理excel数据常用操作:更改列名称,将时间改为时间戳,时间取整,提取日时间戳,年月日转为DOY,删除列,提取所有列名称,筛选满足条件的行,路径/名称拆分,缺失值填充、数据替换

本文介绍了如何在Python中使用pandas对DataFrame进行操作,包括列名更改、时间格式转换、数据清洗(填充缺失值和替换特定值)、筛选有效数据行以及文件路径处理等关键步骤。
摘要由CSDN通过智能技术生成

 更改列名称.rename()

# 更改列名称.rename()
df1.rename(columns={'Ta_10m': 'Ta'}, inplace=True)

将时间改成时间戳pd.to_datetime()

df1["TIMESTAMP"] = pd.to_datetime(df1["TIMESTAMP"], errors='ignore')

时间取整.dt.round()

# 这里是让一些不整点的时间整起来
freq = '1min'
df1["Date"] = df1['Date'].dt.round(freq)

舍弃时分秒将时间提取至年月日.dt.date

df1['date'] = df1['Date'].dt.date

将时间从年月日转为一年中的第几天(DOY,day of the year).dt.dayofyear

df1['DOY'] = df1['Date'].dt.dayofyear

删除列.drop()

df1.drop(labels = ["date"], axis = 1, inplace = True)  # 删除列,需要增加inplace = True这一项

提取所有列名称并转为列表.columns.to_list()

header_list = df1.columns.to_list()

筛选并保留满足条件的行.loc()

# 筛选出LE≠-6999且H≠-6999的行,保存为df1
df1 = df.loc[(data['LE'] != -6999) | (data['Hs'] != -6999)]

拆分路径或名称.split()

file = "D:\\YMJ_file\\1_last_plz\\fluxnet\\test.csv"
outpath = file.split(".csv")[0] + ".xlsx"

# "D:\\YMJ_file\\1_last_plz\\fluxnet\\test.xlsx"

缺失值填充.fillna()、数据替换.replace()

# 将所有空值替换成-6999
data.fillna(-6999, inplace=True)
# 将所有-9999的值替换成-6999
data.replace(-9999, -6999, inplace=True)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值