R聚合将字符串转换为数字。为什么会发生这种情况,我该如何避免呢?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了R聚合将字符串转换为数字。为什么会发生这种情况,我该如何避免呢?相关的知识,希望对你有一定的参考价值。

为什么此代码仅将数字打印到控制台?如何获得名称为1到13且内容为a,n的列表; B,O;等等?

aggregate(letters, by = data.frame(rep(1:13, 2)), head, simplify = F)

我正在使用R 3.5.1。

我还没有发现重复。以下是我迄今为止在类似主题上发现的内容。

一个类似但不完全相同的问题:

R Aggregate FUN=head

一个显然类似的问题,实际上是关于聚合数字:

R: Aggregate character strings

答案

letters被强制转换为数据帧。它成为一个因素。因子在R中存储为整数。如果某些级别丢失,它们通常看起来像整数。试试这个:

aggregate(data.frame(letters, stringsAsFactors = F), by = data.frame(rep(1:13, 2)), head, simplify = F)

以上是关于R聚合将字符串转换为数字。为什么会发生这种情况,我该如何避免呢?的主要内容,如果未能解决你的问题,请参考以下文章

将JSON中的大数字解析为字符串[重复]

如何在mongo聚合不起作用的情况下将字符串转换为日期总是返回null?

当我们从另一个char整数中减去一个char整数会发生什么?

为啥在浮点转换中会发生这种情况?

如何连接因子,而不将它们转换为整数级别?

Javascript:将字符串转换为数字?