【发布时间】:2022-01-20 09:07:57
【问题描述】:
我使用 python 提取了一个 NC 文件,在处理数据后,最终输出是一个带有 (199, 314) 的数组。我将数组转换为数据框,但行名和列名(索引)分别从零开始到 199 和 314。
from netCDF4 import Dataset
import numpy as np
import pandas as pd
data = Dataset('GolestanM.nc', 'r')
dims = data.dimensions
ndims = len(dims)
vars = data.variables
nvars = len(vars)
attrs = data.ncattrs
lon = data.variables['lon'][:]
lat = data.variables['lat'][:]
t = data.variables['time'][496]
fire = data.variables['FireMask'][496,:,:]
dataset = pd.DataFrame(fire)
但是,我想使用以下格式重命名这些索引: 列:名字 53.7042 然后 +0.0083 直到名字达到 56.3208
[0-->53.7042, 1-->53.7.25, ... , 314-->53.3208]
行:名字 38.1125 然后 -0.0083 直到名字达到 36.4625
[0-->38.1125, 1-->38.1042, ... , 199-->36.4625]
要做到这一点,我有下面的代码:
dataset = dataset.rename(index={0: "38.1125"})
dataset = dataset.rename(columns={0: "53.7042"})
dataset = dataset.rename(index = lambda x: x + (0.0083),
columns = lambda x: x + (0.0083))
但是这样做会给我以下错误:
TypeError: can only concatenate str (not "float") to str
谁能帮我解决这个问题。
【问题讨论】: