小编Roc*_*nte的帖子

对R - typeof中的类型感到困惑,返回整数,这显然是一个因素

创建一个变量

a_variable <- c("a","b","c")
Run Code Online (Sandbox Code Playgroud)

检查类型:

typeof(a_variable)
Run Code Online (Sandbox Code Playgroud)

我想要一个因素 - 改变因素:

a_variable <- as.factor(a_variable)
Run Code Online (Sandbox Code Playgroud)

检查类型:

typeof(a_variable)
Run Code Online (Sandbox Code Playgroud)

说它是整数!?作为R newb,这很令人困惑.我只是告诉R使一个因子不是整数.

测试看它是否以某种方式神奇地创建了一个整数:

a_variable * 1
Run Code Online (Sandbox Code Playgroud)

嗯......我收到一条错误消息,说"*"对因素没有意义.这对我来说似乎很奇怪,因为R只是告诉我它是一个整数!?

显然,我很困惑,有人能够更开明的帮助让我理解这种疯狂吗?

r

9
推荐指数
1
解决办法
3046
查看次数

如何处理具有UTF-8标记字符串的R Package中的示例数据

我想在我正在编写的包中包含一个示例数据集(Twitter推文和metadata)R.

我使用Twitter API它下载了一个示例data.frame,并将其保存为我的包中的.RData(带有相应的.R数据描述文件).

当我运行R CMDCheck时,我得到以下注意,

 * checking data for non-ASCII characters ... NOTE
 Note: found 287 marked UTF-8 strings
Run Code Online (Sandbox Code Playgroud)

我试图保存data.frameASCII=TRUE,希望这将解决这个问题.但它仍然存在.有关如何让R CMDCHECK在没有音符的情况下运行的任何想法?

(另外,UTF-8如果这是解决方案,我愿意从示例数据中删除所有标记的字符串).谢谢!

data.frame中的示例行:

First time in SF (@ San Francisco International Airport (SFO) - @flysfo in San Francisco, CA) https://t.co/1245xqxtwesr
  favorited favoriteCount replyToSN             created truncated replyToSID                 id replyToUID
1     FALSE             0      <NA> 2015-03-13 23:30:35     FALSE       <NA> 576525795927179264       <NA> …
Run Code Online (Sandbox Code Playgroud)

twitter r utf-8

5
推荐指数
1
解决办法
507
查看次数

基于列名字符向量的子集数据框

菜鸟问题 - 提前感谢您的耐心...

我有一个数据框:

vals <- c(1,1,1,1)
testdf <- data.frame("var1"=vals, "var2"=vals, "var3"=vals)
Run Code Online (Sandbox Code Playgroud)

我有一个变量名的字符向量:

varnames <- c("var1", "var2")
Run Code Online (Sandbox Code Playgroud)

这是一个字符向量 b/c 我用它在脚本的前面生成一个公式。

我想对数据帧进行子集化,以便排除 varnames 中的变量,例如

newDF <- subset(df, select=-varnames)
Run Code Online (Sandbox Code Playgroud)

这会产生错误,因为subset需要名称而不是字符。所以,我lapply用来将字符更改为名称:

varnames <- lapply(varnames, as.name)
Run Code Online (Sandbox Code Playgroud)

这个 lapply 函数的结果是一个命名(?)和嵌套(?)列表。

[[1]]
var1

[[2]]
var2

[[3]]
var3
Run Code Online (Sandbox Code Playgroud)

这就是我迷路的地方(我觉得自己像吃了疯狂药丸的穆加图……这让其他人感到困惑吗!?)。我可以看到每个值都已正确地从字符更改为名称,但它位于这个奇怪的嵌套结构中 - 因此当我尝试进行子集化时,出现错误。

我尝试了各种解决方案来取消嵌套和取消命名,但都没有成功。这一定是我想念的容易的东西。

作为奖励 - 有人能告诉我为什么 lapply 返回这个嵌套的命名列表而不是简单的向量是有用的吗?例如,它似乎与 Python 非常不同。谢谢你。

r

2
推荐指数
1
解决办法
7732
查看次数

标签 统计

r ×3

twitter ×1

utf-8 ×1