问题标签 [r-factor]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
7627 浏览

r - R 求和因子

我根据以下因素拆分了一些数据:

现在我想将一些因素加在一起,例如

但我收到以下错误,

任何帮助都会很棒。

aaa val1 val2 ...
aaa
bbb
bbb
ccc
ccc

现在,如果我分成因素,我有三个。但我希望例如 aaa 和 ccc 一起考虑。这意味着应将另一列中的值相加。

谢谢

0 投票
2 回答
2094 浏览

r - plyr 是否会跳过某个因子的缺失级别[即分组变量]?

plyr 是否会跳过某个因子的缺失级别[即分组变量]?这是我诊断问题的第一个问题。

我有一个数据集,其中患者位于strata=ruralstrata=city。我想将ageintreatment=Atreatment=B.

例如,我正在尝试做:

但它告诉我

t.test.formula 中的错误(年龄 ~ 治疗,数据 = x,na.rm = TRUE):分组因子必须恰好有 2 个级别

如果我运行factor(data$strata)并且factor(data$treatment)我分别只看到两个级别(它们分别是两个标签;这不是问题,对吗?)。

plyr 是否认为 NA 是分组因素中的一个级别?错误消息可能是什么问题?

我一直在谷歌搜索并查看 stackoverflow 来回答这个问题。我对 R 很陌生,但我找不到答案。任何帮助深表感谢。


所以我有一些示例代码。Chase 的例子效果很好,但是当我使用我的数据时,我仍然得到同样的错误。

dlply(data.c, .(strata), function(x) t.test(age~treatment, data=x, na.rm=TRUE产生了同样的错误。

我不明白为什么会这样。

下面是我的data.c

0 投票
1 回答
66449 浏览

r - 更改 data.frame 的 stringsAsFactors 设置

我有一个函数,我在其中定义了一个data.frame我使用循环填充数据的函数。在某些时候,我收到警告消息:

警告消息: 1: In [<-.factor( *tmp*, iseq, value = "CHANGE") : 无效因子水平,生成 NA

因此,当我定义我的 data.frame 时,我想将选项设置stringsAsFactorsFALSE但我不明白该怎么做。

我努力了:

并且:

设置 stringsAsFactors 选项的正确方法是什么?

0 投票
1 回答
269 浏览

r - 从因子生成二分变量

我有一个数据框,其中包含一个因素,例如:

我正在尝试为特定值生成一个定义为 1 和 0 的二分变量var1。但是,当我输入以下代码时:

我得到以下信息:

第一项更改为 1,但其余变为 NA。我怎样才能得到我想要的结果?

0 投票
0 回答
118 浏览

r - 将数据框列类从因子更改为数字而不更改数据框中的值

可能重复:
如何在不丢失信息的情况下将因子转换为整数\数字

我对 data.frame 中的因子列有疑问。我想将因子转换为数值类,并尝试不同的东西,但我的结果有点奇怪。我有一个这样的数据框:

我想将 de class“factor”更改为 class“numeric”。我认为以下解决方案很好,但是如果您查看我创建的表,所有值都会更改。有没有办法防止这种变化的价值?或者获取数字数据框的其他解决方案?

谢谢

0 投票
1 回答
236 浏览

r - 在没有数据框的情况下跟踪因子水平

免责声明:这个项目一开始是别人的代码,我敢肯定有非最佳的设计决策,但我的手比我自己的项目更受束缚。

我有一个机器学习算法,它使用经过训练的模型对象和一组评分数据来创建评分数据的数据框。模型对象是一个带有公式和数据框的列表。

模型数据框的作用之一是确保评分数据框具有与模型预期相同的列,并且这些列的因子水平相同。为了实现这一点,我们将任意一行的训练数据存储在model$df(数据框)中,因为没有行的数据框被迫没有因子级别。然后我们使用有点笨拙的线

这会产生具有相同值但扩展因子水平的评分数据框。我的理解是,rbind强制两个数据帧的因子变量中的水平等于两个单独帧中水平的并集,所以这几乎完全符合我的需要。

但是,我确信这不是正确的方法。有什么建议吗?

提前致谢,我会等着详细说明。

0 投票
2 回答
2285 浏览

r - R中的鬼因子水平

可能重复:
在 R 中的子集数据框中删除因子级别

我已经用某个因子水平对观察进行了子集化。在检查这是否已经完成时summary(),仍然列出了级别,但观察值为零。他们不应该在子集期间消失吗?

0 投票
1 回答
1733 浏览

r - 在 R 中,如何测试两个因素是否相等?

我正在生成一个包含不同级别的因素的大列表,并且我希望能够检测其中两个何时定义相同的分区。例如,我想将以下所有内容检测为彼此等效:

做这个的最好方式是什么?

0 投票
1 回答
12129 浏览

r - 比较两个因子的水平

是否可以评估两个因素,查看它们是否具有相同数量的级别,如果是,哪些级别不存在于一个或另一个中?

0 投票
1 回答
254 浏览

r - 因子()中未指定的水平

我正在使用 R 中带有代码簿的数据集,它基本上告诉我因子变量的不同级别的标签应该是什么。例如,使用密码本,我可以看到在我的“性别”变量中,0 是“女性”,1 是“男性”。我正在使用这些信息来相应地标记变量中的值。

然而,令我沮丧的是,我最近发现密码本并不完整。例如,对于一个变量,它告诉我 1 是“是”,2 是“否”,但没有告诉我 7、8 和 9 是什么,我可以在数据中看到。我想做的是按如下方式标记这个变量(或类似的东西):

基本上,我希望所有未在密码本中指定的级别都被标记为它们自己。我遇到的问题是这个密码本缺少很多这些,我真的不想手动查看我的数据中的所有未定义值来构造上述代码的永远变量。另外,如果我只是省略了那些缺失的级别,R 会自动将它们标记为“NA”,这是我不想要的。

摘要:我试图弄清楚如何使用因子(),而不是将所有未指定的级别标记为“NA”,而是将它们标记为它们自己。