r图形与可视化
R 报错:Don't know how to automatically pick scale for object of type
映射的列是列表列(list-column)或复杂对象,ggplot 不知道该用哪种标度。
报错原文
Error: Don't know how to automatically pick scale for object of type <list>.为什么会报这个错
映射的列是列表列(list-column)或复杂对象,ggplot 不知道该用哪种标度。
怎么解决
str(df) 找到列表列,用 tidyr::unnest() 展开,或 sapply() 抽出标量后再画。
代码示例
str(df)
df2 <- tidyr::unnest(df, col)
# 或
df$val <- sapply(df$listcol, function(x) x[[1]])同工具的其他报错
- R 报错:Discrete value supplied to continuous scale(离散值喂给连续标度)
- R 报错:Aesthetics must be either length 1 or the same as the data
- R 报错:stat_count() can only have an x or y aesthetic(柱状图映射错误)
- R 报错:object 'x' not found(ggplot 图层找不到变量)
- R 报错:Continuous value supplied to discrete scale(连续值喂给离散标度)
- R 报错:geom_point requires the following missing aesthetics: x and y
报错解决了,但方法还没搞懂?
报错只是表象。因果推断、面板数据、稳健性检验这些方法背后的逻辑,知识库里按「原理 × 直觉 × 代码」讲清楚了。
进入知识库 →