我的R汇总函数的输出正在生成表格数据,其中一些单元格的值如下:
“Max.12312” “分钟123123” “意思是......”
等。
我想删除包含“Max”的部分。 ,“敏。”等,因为该数据的标签已在表格的第一栏中处理。
所以我写了一个for循环(是的,我知道要避免循环 - 但在编写高效的代码之前,我试图在这里得到算法)
columnNames<-colnames(sum_dframe)
for(i in 1:length(columnNames))
{
varColData<-sum_dframe[,i]
if(grepl("Alpha-Numeric",sug_dtype[i],fixed = TRUE) !=TRUE) #not an alpha-numeric type column i.e its a numeric type
{
for(j in 1:length(varColData))
{
if(!is.na(varColData[j]))
{
varCellData<-varColData[j]
if(grepl("Max.",varCellData)==TRUE)
varCellData<-gsub("Max.","",varCellData,fixed = TRUE)
if(grepl("Min",varCellData)==TRUE)
varCellData<-gsub("Min.","",varCellData,fixed = TRUE)
if(grepl("Median",varCellData)==TRUE)
varCellData<-gsub("Median","",varCellData,fixed = TRUE)
if(grepl("Mean",varCellData)==TRUE)
varCellData<-gsub("Mean","",varCellData,fixed = TRUE)
if(grepl("1st Qu.",varCellData)==TRUE)
varCellData<-gsub("1st Qu.","",varCellData,fixed = TRUE)
if(grepl("3rd Qu.",varCellData)==TRUE)
varCellData<-gsub("3rd Qu.","",varCellData,fixed = TRUE)
if(grepl(":",varCellData)==TRUE)
varCellData<-gsub(":","",varCellData,fixed = TRUE)
varColData[j]<-varCellData
}
}
}
else if(grepl("Alpha-Numeric",sug_dtype[i],fixed = TRUE) ==TRUE) #alpha-numeric type column
{
sum_dframe[,i]<-NULL #blank the cell
}
}
但我无法编辑单元格值 - 似乎R不允许我在生成后更改“因子”的值。
抛出的错误是:
警告[<-.factor
(*tmp*
,j,value =“:1”):
无效因子水平,NA生成
如何使这个可编辑?