【问题标题】:Use qplot to draw only one subset of data使用 qplot 仅绘制一个数据子集
【发布时间】:2013-01-19 17:47:09
【问题描述】:

我有一个名为 d 的列表,如下所示:

V1 是一个从 0 到 50 的整数集 V2 是从 1500 到 1800 的真实集合 V3 是一个从 1 到 50 的整数集

列表总共包含 5100 个对象

现在我想绘制V2 的直方图,其中V1 = 某个数字(0、1 或 10 等)

我尝试了不同的方法:

factor(d$V1)
qplot(V2, data=d, V1 = 1)        --> not successful 
d.subset <- subset(d, d$V1 = 1)  --> not successful

我真的被这个弄疯了。检查d$V1的特征,没有发现什么奇怪的。谁能帮帮我?

is.factor(d$V1) 

[1] TRUE

str(d$V1)  Factor w/ 51 levels "1","2","3","4",..: 1 2 3 4 5 6 7 8 9 10 ...

levels(d$V1)  
[1] "1"  "2"  "3"  "4"  "5"  "6"  "7"  "8"  "9"  "10" "11" "12" "13" "14" "15" "16" "17" "18" "19" 
[20] "20" "21" "22" "23" "24" "25" "26" "27" "28" "29" "30" "31" "32" "33" "34" "35" "36" "37""38" 
[39] "39" "40" "41" "42" "43" "44" "45" "46" "47" "48" "49" "50" "51"

【问题讨论】:

标签: r list ggplot2 subset r-factor


【解决方案1】:

换行:

d.subset <- subset(d, d$V1 = 1)

d.subset <- subset(d, V1 == 1)

注意双等号 (==) 表示逻辑运算符。 = 用于赋值,不会对数据框进行子集化。

最后,如果您想获得因子的 "1" 级别(可能与数字 1 不同),您可能意味着将 1 放在引号中。

d.subset <- subset(d, V1 == "1")

【讨论】:

    猜你喜欢
    • 2021-04-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-26
    • 2011-02-26
    • 2017-01-03
    • 2020-07-16
    • 1970-01-01
    相关资源
    最近更新 更多