Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
r-根据所选变量计算一个类别的频率_R_Frequency_Percentage - Fatal编程技术网

r-根据所选变量计算一个类别的频率

r-根据所选变量计算一个类别的频率,r,frequency,percentage,R,Frequency,Percentage,我有一个名为stats的数据框架,其中有两列Gender和Transportation。使用的如下所示: Gender Transportation.used Male Bus Male Car Female Car Male Car Male Motorcycle Female Bus 而且名单还在继续。。(或在此处查看:) 那么我如何计算才能得到数据呢?我还是一个使用R的初学者,请帮助我。提前谢谢 试试看,对于频率 table(st

我有一个名为stats的数据框架,其中有两列GenderTransportation。使用的如下所示:

Gender    Transportation.used
Male      Bus
Male      Car
Female    Car
Male      Car
Male      Motorcycle
Female    Bus
而且名单还在继续。。(或在此处查看:)

那么我如何计算才能得到数据呢?我还是一个使用R的初学者,请帮助我。提前谢谢

试试看,对于频率

table(stats)
prop.table(table(stats))
或者,对于相对频率

table(stats)
prop.table(table(stats))
或者,甚至更好(例如):

我再举几个例子:

dt  <- data.frame(gender = rep(c("Male", "Female"), c(4, 2) ), trans = rep(c("Car", "Bus", "Bike"), c(3, 2, 1) ))

table(dt)
        trans
gender   Bike Bus Car
Female    1   1   0
Male      0   1   3
试试看,频率

table(stats)
prop.table(table(stats))
或者,对于相对频率

table(stats)
prop.table(table(stats))
或者,甚至更好(例如):

我再举几个例子:

dt  <- data.frame(gender = rep(c("Male", "Female"), c(4, 2) ), trans = rep(c("Car", "Bus", "Bike"), c(3, 2, 1) ))

table(dt)
        trans
gender   Bike Bus Car
Female    1   1   0
Male      0   1   3

您可以使用
表格

我们重新创建您的data.frame。请注意,最好提供一个

在这种只有两列的特殊情况下,
table(df)
也可以工作并生成所需的输出(尽管是转置的)

如果您确实希望
男性
作为
表的第一列
,您可以更改系数
性别
的级别顺序(默认按字母顺序排列)

您可以从中获得的最基本的图形(但请参见条形图)是:

tab <- with(df, table(Transportation.used, Gender))
barplot(tab)

您可以使用
表格

我们重新创建您的data.frame。请注意,最好提供一个

在这种只有两列的特殊情况下,
table(df)
也可以工作并生成所需的输出(尽管是转置的)

如果您确实希望
男性
作为
表的第一列
,您可以更改系数
性别
的级别顺序(默认按字母顺序排列)

您可以从中获得的最基本的图形(但请参见条形图)是:

tab <- with(df, table(Transportation.used, Gender))
barplot(tab)

对不起,我已经解决了我的问题。我的意思是,只根据表中选定的一种交通工具计算性别频率。我能够找到所有传输的频率表,但没有找到所选的。已完成回答。很抱歉,我已经解决了我的问题。我的意思是,只根据表中选定的一种交通工具计算性别频率。我能够找到所有传输的频率表,但没有找到所选的。已完成回答。很抱歉,我已经解决了我的问题。我的意思是,如何根据表格中选择的一种交通方式计算性别频率?我能够找到所有传输的频率表,但没有找到所选的。@Annie
table(df)[,“Bus”]
?我用您需要的精确答案编辑了这个问题。通过更改
dt$varnames
可以很好地控制所需的变量。@AnnieTan我复制编辑的代码时出错了。现在它是正确的。对不起,我已经解决了我的问题。我的意思是,如何根据表格中选择的一种交通方式计算性别频率?我能够找到所有传输的频率表,但没有找到所选的。@Annie
table(df)[,“Bus”]
?我用您需要的精确答案编辑了这个问题。通过更改
dt$varnames
可以很好地控制所需的变量。@AnnieTan我复制编辑的代码时出错了。现在它是正确的。
with(df, table(Transportation.used, Gender))["Bus",, drop=FALSE ]
                    Gender
Transportation.used Female Male
                Bus      1    1