Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/82.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 - Fatal编程技术网

R中的列数据类型分类

R中的列数据类型分类,r,R,我有一个数据库。如何获取所有列类型,并将其保存到文件中。不同类型: -浮动 -整数 -大整数 -串 我的代码是: library(foreign) library(memisc) data <- read.spss("data.sav", use.value.labels = FALSE, max.value.labels = 100) write.table(summary(data), "out.txt") 所需输出: SubsID

我有一个数据库。如何获取所有列类型,并将其保存到文件中。不同类型: -浮动 -整数 -大整数 -串

我的代码是:

   library(foreign)
   library(memisc)
   data <- read.spss("data.sav", use.value.labels = FALSE, max.value.labels = 100)
   write.table(summary(data), "out.txt")
所需输出:

SubsID                      BigInteger
SubsID_RN                   String
responseid                  Integer

您可以这样调用列的类或类型:

lapply(your_data_frame, class)
lapply(your_data_frame, typeof)

在R.cf中没有“BigInteger”这样的东西。对于R中更详细的解释,类型系统的工作方式与许多其他通用语言不同。首先,R中的所有对象都是对象,基本对象类型之一是
向量
。向量本身的类型由其包含的数据定义。有六种原子向量类型可通过
typeof
函数访问。在R文档中,您可以找到下表

+------------+----------+--------------+
|   typeof   |   mode   | storage.mode |
+------------+----------+--------------+
| logical    | logical  | logical      |
| integer    | numeric  | integer      |
| double     | numeric  | double       |
| complex    | complex  | complex      |
| character  | character| character    |
| raw        | raw      | raw          |
+------------+----------+--------------+
如您所见,float和double或Integer和biginger之间没有区别。另外,字符串只是R中的一个字符

因此,在您的例子中,如果您想知道每个变量的具体基本类型,您可以使用

lapply(data, typeof)
R文档包含有关对象和基本类型的更多信息:

lapply(data, typeof)