Ggplot error : haven_labelled/vctrs_vctr/double

Ggplot error : haven_labelled/vctrs_vctr/double

我是新来的,还在学习 R,所以我正在处理一个错误。

这是我从控制台得到的

Don't know how to automatically pick scale for object of type haven_labelled/vctrs_vctr/double. Defaulting to continuous.

我不知道我该怎么做才能让它发挥作用。我想要一个散点图。

ggplot(data = diagnoza, aes(x = Plecc, y = P32.01))

不知道如何为 haven_labelled/vctrs_vctr/double 类型的对象自动选取比例。默认为连续。

按照@zx8754 的建议添加geom_point 给了我一个散点图。您报告的警告仍然与您的一些变量类型 haven_labelled 有关,所以我猜您是从 SPSS 导入数据的。

要消除此警告,您可以使用 haven::as_factor 将变量转换为 R 因子。可能最好在导入数据后对整个数据集执行此操作。

diagnoza <- structure(list(Plecc = c(2, 2, 2, 1, 2, 1, 1, 1, 2, 2, 1, 2, 
                                     1, 1, 1, 1, 2, 1, 1, 2), P32.01 = structure(c(3, 4, 5, 5, 5, 
                                                                                   5, 5, 4, 3, 5, 3, 4, 3, 4, 5, 5, 5, 3, 4, 5), label = "P32.01. odpoczynek w domu (oglądanie TV)", format.spss = "F1.0", display_width = 12L, labels = c(Nigdy = 1, 
                                                                                                                                                                                                                                           Rzadko = 2, `Od czasu do czasu` = 3, Często = 4, `Bardzo często` = 5
                                                                                   ), class = c("haven_labelled", "vctrs_vctr", "double"))), row.names = c(NA, 
                                                                                                                                                           -20L), class = c("tbl_df", "tbl", "data.frame"))

library(haven)
library(ggplot2)

# Convert labelled vector to a factor
diagnoza$P32.01 <- haven::as_factor(diagnoza$P32.01)

ggplot(data = diagnoza, aes(x = Plecc, y = P32.01)) +
  geom_point()