此问题与具有类似标题的另一个问题类似,但不相同。
我有一个包含因子变量的数据框。我想绘制一个直方图(最好在ggplot2
),它显示x轴上的整数,以及在y轴上有x个观测值的因子计数。所以我可以看到x1因子有1个观察值,x2个因子有2个观察值等等。
我自己无法解决这个问题。任何帮助将不胜感激。
编辑:我的问题与Make Frequency Histogram for Factor Variables不同。
那个问题问道,“我的数据框中每个因子级别有多少?”也就是说,有多少只狗,多少只猫,多少只鸟。
我在问,“有多少因子级别有x行?”也就是说,有多少动物有2排?如果在我的数据框中有3只鸟和3只狗,我想要一个直方图,显示有2个因子水平有3个观察值。
EDIT2:嗯。我想我不是在解释自己。我已经从Kaggle比赛中下载了训练数据。数据是一套公寓出租清单。数据中的一个字段是building_id。我已将building_id字段分解。我想绘制:有多少栋建筑有1个列表?有多少栋建筑有2个房源?等
示例:
listingid buildingid bedrooms bathrooms etc...
001 001 1 1
002 001 2 1
003 001 1 1
004 001 2 1
005 002 1 1
006 002 2 1
007 002 1 1
008 003 2 2
009 003 1 1
010 004 2 2
011 004 3 1
012 005 1 1
013 006 2 2
014 007 2 1
015 008 1 1
016 009 1 1
我想要的情节会显示:
5| X
num 4| X
bldgs. 3| X
2| X X
1| X X X X
+--------------------------------
num listings: 1 2 3 4
该图显示一栋建筑物(建筑物001)有4个列表,一栋建筑物(建筑物002)有3个列表,两栋建筑物(003和004)有2个列表,5栋建筑物(005,006,007,008, 009)有一个列表。
答案 0 :(得分:0)
要获取因子的级别数,我们可以使用FOR r_time IN c1 LOOP
。要为每个因素执行此操作,我们需要知道data.frame中的哪些变量是因子。我们使用INSERT INTO time_calendar_dim_2(DAY_ID,DAY_TIME_SPAN,DAY_END_DATE)
VALUES
(SEQ_Time_Dim_IDSTART.nextval,r_time.DAY_ID,r_time.DAY_TIME_SPAN,r_time.DAY_END_DATE);
**END LOOP;
END;**
/
执行此类检查。
对这两个命令进行矢量化,然后对它们进行条形图处理。
length(levels(myfactor))
在ggplot2中,我会做类似下面的事情。
which(is.factor(myvariable))
这是你想要的吗?如果没有,请澄清您的问题with example data。
纯粹的语义,但你想要绘制的是而不是直方图。 子>