R中一切都是vector
0、可以说R语言中一切结构体的基础是vector!
R中一切都是vector,vecotor的每个component必须类型一致(character,numeric,integer....)!
vector 是没有dimensions的也没有attributes,所以去掉dimension和attributes就成了vector(其实dimension可以作为attributes的一个属性存在但是named** 命名**一般不会作为attributes的属性的)
解释下
0.1为何没有dimensions?
------这里其实纠正我一个观点:我一直以一个点是有维度的,但其实点是标量
What I don't understand is why vectors (with more than one value) don't
have dimensions. They look like they do have 1 dimension. For me no
dimension 没有dimension就是标量,比如一个点就是标量. Like in geometry: a point has no dimension,
a line has 1, a square has 2, a cube 3 and so on. Is it because of some
internal process? The intuitive geometry way of thinking is not
programmatically relevant?
0.2、没有attributes,如果加了attributes怎么样?
factors是character data,但是要编码成 numeric mode,每个number 关联一个指定的string,称为levels。比如
> fac<- factor(c("b", "a", "b"))
> dput(fac)
structure(c(2L, 1L, 2L), .Label = c("a", "b"), class = "factor")
> levels(fac)
[] "a" "b"
> fac
[] b a b
Levels: a b
> as.numeric(fac)
[]
factor组成: integer vector+ levels attributes
1、arrary和vecotr的转换
if we remove dimension part array just a vector----array去掉属性dimension就是vector
>nota=array(:,)//只有一个dimension 的array
>dim(not1)<-NULL
>dput(nota)
:
>is.array(nota)
>is.vector(nota)
2、array和matrix的转换
arrays are matrices with more than 2 dimensions.<==>matrices are arrays with only 2 dimensions
Arrays can have any number of dimensions including 1, 2, 3, etc.
比如只有一个维度的array nota=array(1:4,4)
3、list和vecotor的转换a list with no attributes is a vecotor,所以如下没有设置属性的list是vector 的
> vl<- list(sin, , "a")
> is.vector(vl)
[] TRUE
> class(vl)
[] "list"
> attributes(vl)
NULL
注意names 不是属性的,所以namedlist依旧是vector
> my.list <- list(num=:, let=LETTERS[:])
> names(my.list)
[] "num" "let"
> is.vector(my.list)
[] TRUE
R中一切都是vector的更多相关文章
- 简单介绍一下R中的几种统计分布及常用模型
统计学上分布有很多,在R中基本都有描述.因能力有限,我们就挑选几个常用的.比较重要的简单介绍一下每种分布的定义,公式,以及在R中的展示. 统计分布每一种分布有四个函数:d――density(密度函数) ...
- 关于R中的mode()和class()的区别
本文原创,转载请注明出处,本人Q1273314690(交流学习) 说明:本文曾经在15年11月在CSDN发过,但是由于CSDN不支持为知笔记的发布为博客的API功能,所以,自今天起,转移到博客园(幸好 ...
- 在 R 中估计 GARCH 参数存在的问题(基于 rugarch 包)
目录 在 R 中估计 GARCH 参数存在的问题(基于 rugarch 包) 导论 rugarch 简介 指定一个 \(\text{GARCH}(1, 1)\) 模型 模拟一个 GARCH 过程 拟合 ...
- R语言编程艺术(2)R中的数据结构
本文对应<R语言编程艺术>第2章:向量:第3章:矩阵和数组:第4章:列表:第5章:数据框:第6章:因子和表 ======================================== ...
- (2)R中的数据类型和数据结构
R中的数据结构主要面向<线性代数>中的一些概念,如向量.矩阵等.值得注意的是,R中其实没有简单数据(数值型.逻辑型.字符型等),对于简单类型会自动看做长度为1的向量.比如: > b= ...
- 机器学习:形如抛物线的散点图在python和R中的非线性回归拟合方法
对于样本数据的散点图形如函数y=ax2+bx+c的图像的数据, 在python中的拟合过程为: ##最小二乘法 import numpy as np import scipy as sp import ...
- ML(4): NavieBayes在R中的应用
朴素贝叶斯方法是一种使用先验概率去计算后验概率的方法, 具体见上一节. 算法包:e1071 函数:navieBayes(formule,data,laplace=0,...,subset,na.act ...
- 在 R 中估计 GARCH 参数存在的问题(续)
目录 在 R 中估计 GARCH 参数存在的问题(续) rugarch 包的使用 简单实验 rugarch 参数估计的行为 极端大样本 结论 在 R 中估计 GARCH 参数存在的问题(续) 本文承接 ...
- 在 R 中估计 GARCH 参数存在的问题
目录 在 R 中估计 GARCH 参数存在的问题 GARCH 模型基础 估计 GARCH 参数 fGarch 参数估计的行为 结论 译后记 在 R 中估计 GARCH 参数存在的问题 本文翻译自< ...
随机推荐
- VC调试闪退解决办法
在VC2010调试或执行EXE文件时,程序运行结束后自动退出了,想看到打印 可以采用几种方法: 1.按ctrl+F5只执行不调试 2.在cmd中手动调用 而不是直接点 3.加入getchar #in ...
- 使用phpMyAdmin修改MySQL数据库root用户密码
点击顶部的“SQL”标签进入sql命令输入界面.输入以下命令: update mysql.user set password=PASSWORD('snsgou$123456') where user= ...
- PHP正则表达式详解(三)
1.preg_match() :preg_match() 函数用于进行正则表达式匹配,成功返回 1 ,否则返回 0 . 语法:int preg_match( string pattern, strin ...
- java基础知识(三)java关键字
关键字是电脑语言事先定义的,是特别意义的标识符,又叫保留字.用来表示一种数据类型或程序的结构等,关键字不能用作变量名.类名.方法名或参数.java目前共有50个关键字,其中"const&qu ...
- C++成员初始化顺序
#include <iostream> using namespace std; int seti() {cout << "seti" << e ...
- Asp.Net Core--简单的授权
翻译如下: 在MVC中授权通过控制AuthorizeAttribute属性及其各种参数.在最简单的应用AuthorizeAttribute属性控制器或行动限制访问控制器或操作任何身份验证的用户. 例如 ...
- iOS抓包利器Charles
iOS抓包利器Charles http://wonderffee.github.io/blog/2013/07/13/best-packet-capture-tool-charles-in-ios/ ...
- linux Mint截图软件 Shutter
安装shutter: sudo add-apt-repository ppa:shutter/ppa sudo apt-get update sudo apt-get install shutter ...
- CI 笔记一
CodeIgniter 说明 CodeIgniter 是为PHP 开发人员提供的一套Web 应用程序工具包.它的目标是能 够让你比从零开始更加快速的完成项目,它提供了一套丰富的的类库来满足我们日常 的 ...
- How to Install The Alpha Control Packages.
Uninstalling previous version of the package If you have a previous version of the package already i ...