为什么我得到错误$operator无效而不在我的代码中使用$R?

为什么我得到错误$operator无效而不在我的代码中使用$R?,r,vector,ncdf4,R,Vector,Ncdf4,我正在从netcdf文件创建一个数组,并且在for循环的开始处不断出现这个错误:error:$运算符对于原子向量无效 这是我的代码: vec0 <- vector() time <- c(vec0,1:1952) vec1 <- vector() temp <- c(vec1,1:1952) vec2 <- vector() sphum <- c(vec2,1:1952) vec3 <- vector() rain <- c(vec3,1:

我正在从netcdf文件创建一个数组,并且在for循环的开始处不断出现这个错误:error:$运算符对于原子向量无效

这是我的代码:

vec0 <- vector()
time <- c(vec0,1:1952)

vec1 <- vector()
temp <- c(vec1,1:1952)

vec2 <- vector()
sphum <- c(vec2,1:1952)

vec3 <- vector() 
rain <- c(vec3,1:28413)

vec4 <- vector()
surfp <- c(vec4,1:1952)

for (i in 1:length(filenames))
  {ncdata=nc_open(filenames[i]) 

 nctime=ncvar_get(ncdata,"time") 
  time[i] = nctime[1]

   nctemp=ncvar_get(ncdata,"Tair_f_inst") 
  temp[i] = nctemp[1]

 nchum=ncvar_get(ncdata,"Qair_f_inst") 
  sphum[i] = nchum[1]

  ncrain=ncvar_get(ncdata,"Rainf_tavg") 
  rain[i] = ncrain[1]

  ncsurfp=ncvar_get(ncdata,"Psurf_f_inst") 
 surfp[i] = ncsurfp[1]

 nc_close(filenames[i])}

vec0您使用的函数之一在内部使用$。通常,此错误表示您正在将向量或矩阵传递给需要data.frame的函数。对于如何避免此错误,您有什么建议吗?