R中的列数据类型分类
Column data types classification in R
我有一个数据库。如何获取所有列类型,并将其保存到文件中。区别类型:
- 漂浮
- 整数
- 大整数
- 字符串
我的代码是:
library(foreign)
library(memisc)
data <- read.spss("data.sav", use.value.labels = FALSE, max.value.labels = 100)
write.table(summary(data), "out.txt")
但是,此代码仅区分两种类型的数据...(数字,字符串)
输出样本:
Length Class Mode
SubsID 20582 -none- numeric
SubsID_RN 20582 -none- character
responseid 20582 -none- numeric
要求输出:
SubsID BigInteger
SubsID_RN String
responseid Integer
您可以这样调用 class 或列的类型:
lapply(your_data_frame, class)
lapply(your_data_frame, typeof)
R 中没有 'BigInteger' 这样的东西。 data structures in hadley's adv-r更详细的解释
在 R 中,类型系统的工作方式与许多其他常见语言不同。首先,R 中的一切都是对象,其中一种基本对象类型是 vector
。矢量本身的类型由它包含的数据定义。 typeof
函数可以访问六种原子向量类型。在 R 文档中,您可以找到以下 table
+------------+----------+--------------+
| 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 和 BigInteger 之间没有区别。此外,字符串只是 R 中的一个字符。
所以在你的情况下,如果你想知道每个变量的具体基本类型,你可以使用
lapply(data, typeof)
R 文档包含有关对象和基本类型的更多信息:
http://cran.r-project.org/doc/manuals/r-release/R-lang.html#Objects
我有一个数据库。如何获取所有列类型,并将其保存到文件中。区别类型: - 漂浮 - 整数 - 大整数 - 字符串
我的代码是:
library(foreign)
library(memisc)
data <- read.spss("data.sav", use.value.labels = FALSE, max.value.labels = 100)
write.table(summary(data), "out.txt")
但是,此代码仅区分两种类型的数据...(数字,字符串)
输出样本:
Length Class Mode
SubsID 20582 -none- numeric
SubsID_RN 20582 -none- character
responseid 20582 -none- numeric
要求输出:
SubsID BigInteger
SubsID_RN String
responseid Integer
您可以这样调用 class 或列的类型:
lapply(your_data_frame, class)
lapply(your_data_frame, typeof)
R 中没有 'BigInteger' 这样的东西。 data structures in hadley's adv-r更详细的解释
在 R 中,类型系统的工作方式与许多其他常见语言不同。首先,R 中的一切都是对象,其中一种基本对象类型是 vector
。矢量本身的类型由它包含的数据定义。 typeof
函数可以访问六种原子向量类型。在 R 文档中,您可以找到以下 table
+------------+----------+--------------+
| 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 和 BigInteger 之间没有区别。此外,字符串只是 R 中的一个字符。
所以在你的情况下,如果你想知道每个变量的具体基本类型,你可以使用
lapply(data, typeof)
R 文档包含有关对象和基本类型的更多信息: http://cran.r-project.org/doc/manuals/r-release/R-lang.html#Objects