rid*_*994 20 csv r dataframe output
所以我正在尝试根据R中的数据帧编写.csv文件,但由于某种原因,我不断收到以下错误:
Error in .External2(C_writetable, x, file, nrow(x), p, rnames, sep, eol, :
unimplemented type 'list' in 'EncodeElement
Run Code Online (Sandbox Code Playgroud)
这是traceback()给出的:
5: write.table(df, file = "df.csv", col.names = NA,
sep = ",", dec = ".", qmethod = "double")
4: eval(expr, envir, enclos)
3: eval(expr, p)
2: eval.parent(Call)
1: write.csv(df, file = "df.csv")
Run Code Online (Sandbox Code Playgroud)
有解决方案吗
Sum*_*Ela 31
您也可以直接在R中强制数据帧:
my.df <- data.frame(lapply(old.df, as.character), stringsAsFactors=FALSE)
Run Code Online (Sandbox Code Playgroud)
CAVEAT:这会将您的整个数据框强制转换为您指定的任何类型.例如,如果您想将数据框强制转换为数字,则应将'as.characater'替换为'as.numeric':
my.df <- data.frame(lapply(old.df, as.numeric), stringsAsFactors=FALSE)
Run Code Online (Sandbox Code Playgroud)
Mar*_*ing 20
您的一个列是类型列表,因此data.frame不再是二维的,不能导出到二维csv文件.
如果您仍希望将列表存储在结果输出中,则可以先将其转换为JSON.因此它成为"字符"类型的列,可以很容易地作为一列导出到csv.