Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 链接的ifelse()结果为';数据帧';单元格中的值_R_Excel_List - Fatal编程技术网

R 链接的ifelse()结果为';数据帧';单元格中的值

R 链接的ifelse()结果为';数据帧';单元格中的值,r,excel,list,R,Excel,List,因此,我创建了一个列,它使用一个链式ifelse()函数在其他列中使用条件值,该函数返回“低”、“中”或“高”。通过R中的环境查看数据帧时,此单元格的值会正确显示。但是,如果我尝试使用openxlsx将数据帧导出到xlsx,则会出现以下错误: write.xlsx(Data, file = "Analysis.xlsx") Error in is.nan(tmp) : default method not implemented for type 'list' 然后,当

因此,我创建了一个列,它使用一个链式ifelse()函数在其他列中使用条件值,该函数返回“低”、“中”或“高”。通过R中的环境查看数据帧时,此单元格的值会正确显示。但是,如果我尝试使用openxlsx将数据帧导出到xlsx,则会出现以下错误:

write.xlsx(Data, file = "Analysis.xlsx") 

Error in is.nan(tmp) : default method not implemented for type 'list'
然后,当我使用str(data)检查列数据类型时,我得到以下输出:

$ Financial    : chr  "Correct" "Correct" "Correct" "Correct" ...

$ Composite    : num  5 5 3.64 5.36 4 ...

$ Risk         :'data.frame':   30 obs. of  1 variable:
  ..$ Appetite: chr  "High" "High" "High" "Low" ...
当我使用转换数据$Risk列时

Data <- as.character(Data$Risk)
在as.character操作之前,该行是可查看的(以前两行为例):

使用dput:

dput(Data$Risk)
structure(list(Appetite = c("High", "High", "High", "Low", "High", 
"Medium", "Low", "Medium", "Low", "Medium", "Medium", "Medium", 
"Medium", "Medium", "Medium", "Medium", "Medium", "Low", "Medium", 
"Low", "High", "Low", "Medium", "Medium", "High", "High", "Medium", 
"Medium", "Medium", "Medium")), row.names = c(NA, -30L), class = "data.frame")

如何使此列可读为.character,而不使其中的内容不可读?

您可能需要添加
$restine

Data <- as.character(Data$Risk$Appetite)

数据我认为数据看起来像这样:


xx由于您似乎有一个嵌入式框架,您可能可以使用
SurveyData$Risk@r2evans“修复”它。我已将dput的输出放在OP中。我已经做了类似于您建议的事情,但是,我现在如何删除数据框架中的data.frame类?我似乎无法使用我建议的数据删除它
dput(head(SurveyData))
,而不是
dput(SurveyData$Risk)
。它们是不同的,我不确定它是如何集成到中的。你应该向我们展示创建坏对象的代码。谢谢,这很有效。怎么会在一列中有一列呢?我不知道我是如何创建它的。@M1ke您可以尝试
dput(Data)
查看数据结构。是的,只是替换$Risk(我完全同意:为了避免这再次困扰您,最好查看创建此对象的代码。当然,这可能是一个新问题,但提供原因修复要比这里的症状修复好得多。很高兴它成功了!
dput(Data$Risk)
structure(list(Appetite = c("High", "High", "High", "Low", "High", 
"Medium", "Low", "Medium", "Low", "Medium", "Medium", "Medium", 
"Medium", "Medium", "Medium", "Medium", "Medium", "Low", "Medium", 
"Low", "High", "Low", "Medium", "Medium", "High", "High", "Medium", 
"Medium", "Medium", "Medium")), row.names = c(NA, -30L), class = "data.frame")
Data <- as.character(Data$Risk$Appetite)