相关疑难解决方法(0)

对R中事物类型的综合调查; 'mode'和'class'和'typeof'是不够的

语言R让我困惑.实体具有模式,但即使这不足以完全描述实体.

这个答案

在R中,每个"对象"都有一个模式和一个类.

所以我做了这些实验:

> class(3)
[1] "numeric"
> mode(3)
[1] "numeric"
> typeof(3)
[1] "double"
Run Code Online (Sandbox Code Playgroud)

到目前为止公平,但后来我传入了一个向量:

> mode(c(1,2))
[1] "numeric"
> class(c(1,2))
[1] "numeric"
> typeof(c(1,2))
[1] "double"
Run Code Online (Sandbox Code Playgroud)

这没有意义.当然,整数向量应该具有与单个整数不同的类或不同的模式吗?我的问题是:

  • R中的所有内容都有(只有一个)吗?
  • R中的所有内容都有(只有一种)模式吗?
  • 什么,如果有的话,'typeof'告诉我们什么?
  • 完整描述实体还需要哪些其他信息?(例如,'矢量'存储在哪里?)

更新:显然,文字3只是长度为1的向量.没有标量.好吧但是......我试过mode("string")"character",让我觉得字符串是一个字符向量.但如果这是真的,那么这应该是真的,但事实并非如此!c('h','i') == "hi"

r language-lawyer r-faq

43
推荐指数
4
解决办法
9350
查看次数

typeof(data.frame)在R中显示"list"

有人可以澄清为什么typeof(data.frame)在R中显示列表?相反,类给出了预期的类型.例如,演示使用内置的data.frame mtcars.

> typeof(mtcars)
[1] "list"
> class(mtcars)
[1] "data.frame"
Run Code Online (Sandbox Code Playgroud)

有关如何使用typeof与class的任何提示?

attributes r

16
推荐指数
1
解决办法
4612
查看次数

如何知道数据是否是R中的列表或data.frame

我怎么知道R中的数据是列表还是data.frame?

如果我用typeof(x)它说列表,如果我用class(x)它说data.frame?

r list dataframe

14
推荐指数
1
解决办法
7818
查看次数

将 R 中的 CSV 读取为 data.frame

我是 R 新手,正在尝试阅读 csv。该文档显示了一个函数read.csv()。但是,当我读取文件并检查变量的类型时,它会显示一个列表。文档将其显示为data.frame. 有人可以解释为什么会这样吗?

到目前为止我的代码:

mytable<-read.csv(InputFile,header=TRUE,stringsAsFactors=FALSE)
dim(mytable)
typeof(mytable)
Run Code Online (Sandbox Code Playgroud)

输出:

dim(mytable)
[1] 500  20

typeof(mytable)
[1] "list"
Run Code Online (Sandbox Code Playgroud)

csv r dataframe

8
推荐指数
1
解决办法
4359
查看次数

检查变量是否为xts或data.frame

好吧问题就是这一切..如果给定的函数参数是xts或数据框类型,我想检查我的一个函数.我怎样才能做到这一点?

types r dataframe xts

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

为习惯于MATLAB的人学习R,并与R数据类型混淆

是否有简明(但相当彻底)的教程,以使某人习惯在MATLAB中工作,快速编写R代码.

这是我想到的一个特殊问题:根据我对R文档和教程的有限经验,我对R中的数据类型以及如何操作它们留下了很多困惑.例如,什么是向量,矩阵,列表,数据框等,以及它们如何相关.我没有找到明确解释基本数据类型的来源,以至于我想知道语言是否因设计而模糊不清.

r

3
推荐指数
1
解决办法
177
查看次数

R-数据框是列的列表吗?

  1. R中的数据框是否是列的列表(据我所知,列表是对象的序列)?
  2. 在R中将数据帧做成面向列(而非行)结构的设计决定是什么?
  3. 任何对相关设计文档或数据结构设计文章的引用都将受到赞赏。

我只是习惯将行作为一个单位/记录,并且想知道为什么它是面向列的。或者,如果我误解了一点,请提出。

背景

我以为数据帧是一系列的行,例如(臭氧,Solar.R,风,温度,月,日)。

> c ## data frame created from read.csv()
  Ozone Solar.R Wind Temp Month Day
1    41     190  7.4   67     5   1
2    36     118  8.0   72     5   2
3    12     149 12.6   74     5   3
4    18     313 11.5   62     5   4
7    23     299  8.6   65     5   7
8    19      99 13.8   59     5   8

> typeof(c)
[1] "list"
Run Code Online (Sandbox Code Playgroud)

但是,当对c应用lapply()以显示每个列表元素时,它是一列。

> lapply(c, function(arg){ return(arg) })
$Ozone
[1] 41 36 12 18 23 …
Run Code Online (Sandbox Code Playgroud)

r dataframe

0
推荐指数
1
解决办法
1270
查看次数

标签 统计

r ×7

dataframe ×4

attributes ×1

csv ×1

language-lawyer ×1

list ×1

r-faq ×1

types ×1

xts ×1