-
R语言中的多维数组、矩阵、列表、数据框
2018-04-10 20:29:28Dim属性是数组中很重要的属性,也叫维数向量,当维数向量有两个值时代表为矩阵,有一个值时代表为一维数组。#使用向量生成数组或者矩阵 c<-1:12 c # [1] 1 2 3 4 5 6 7 8 9 10 11 12 dim(c)&...在R中,数组(Arrary)可以看做是带多个下标的相同类型的元素集合,常用的是数值型的数组如矩阵,也可以是别的类型的数组,比如字符型,逻辑型等。
Dim属性是数组中很重要的属性,也叫维数向量,当维数向量有两个值时代表为矩阵,有一个值时代表为一维数组。
#使用向量生成数组或者矩阵 c<-1:12 c # [1] 1 2 3 4 5 6 7 8 9 10 11 12 dim(c)<-c(3,4) c # [,1] [,2] [,3] [,4] # [1,] 1 4 7 10 # [2,] 2 5 8 11 # [3,] 3 6 9 12 dim(c)<-12 c # [1] 1 2 3 4 5 6 7 8 9 10 11 12 class(c) # [1] "array" #使用Arrary来生成数组a arrary (data,dim=length(data)) a<-array(1:12,dim=c(3,4)) a # [,1] [,2] [,3] [,4] # [1,] 1 4 7 10 # [2,] 2 5 8 11 # [3,] 3 6 9 12 #使用matrix来构造矩阵(二维数组)matrix(data,nrow=,ncol=,byrow=True) a<-matrix(1:12,3,4) #构建一个3行4列的矩阵 a #数组下标的使用 #数组可以通过1、精确指定下标2、以空值代表所有下标, 3、以向量形式指出下标 4、通过数组形式指出下标 a<-1:24 dim(a)<-c(2,3,4) #定义一个三维数组 a[1,2,3] # [1] 15 a[,,3] # [,1] [,2] [,3] # [1,] 13 15 17 # [2,] 14 16 18 a[,2:3,1:2] # , , 1 # # [,1] [,2] # [1,] 3 5 # [2,] 4 6 # # , , 2 # # [,1] [,2] # [1,] 9 11 # [2,] 10 12 #在不改变数组维度的情况下,将其赋值为0 a[]<-0 a #也可以用其它数组的值来表示该数组的下标 b<-matrix(c(1,1,1,2,2,3,1,3,4,2,1,4),nrow = 3,ncol = 3) b # [,1] [,2] [,3] # [1,] 1 2 1 # [2,] 1 2 3 # [3,] 1 3 4 a[b] # [1] 3 15 23 #同样的我们还可以对其进行赋值运算 a[b]<-0 # a # , , 1 # # [,1] [,2] [,3] # [1,] 1 0 5 # [2,] 2 4 6 # # , , 2 # # [,1] [,2] [,3] # [1,] 7 9 11 # [2,] 8 10 12 # # , , 3 # # [,1] [,2] [,3] # [1,] 13 0 17 # [2,] 14 16 18 # # , , 4 # # [,1] [,2] [,3] # [1,] 19 21 0 # [2,] 20 22 24 #数组和矩阵的四则运算是对应元素之间的运算,一般是结构相同才能运算 #数组和矩阵运算时,是对矩阵的列运算,不匹配时,一般会有警告 #apply函数 apply(A,margin,fun) #a代表矩阵,margin=1 代表按行进行fun函数,=2代表按列进行fun函数 a<-1:6 dim(a)<-c(2,3) a # [,1] [,2] [,3] # [1,] 1 3 5 # [2,] 2 4 6 apply(a,1,sum) # [1] 9 12 #矩阵的运算包含转置、求特征向量、特征根等,笔者用到的不多,以后再总结
-
R语言笔记1:R语言对象的数据类型(向量、数组、矩阵、 列表和数据框)
2018-02-26 15:31:00R语言的对象(Objects)主要包括向量、矩阵、数组、数据框和列表。 R语言的对象有五种最基本的类型,即,字符型(character)、数值型(numeric,包括小数)、整型(integer)、复数型(complex)以及逻辑型...R语言中的数据类型(Data Types)
R语言的对象(Objects)主要包括向量、矩阵、数组、数据框和列表。
R语言的对象有五种最基本的类型,即,字符型(character)、数值型(numeric,包括小数)、整型(integer)、复数型(complex)以及逻辑型(logical,TRUE/FALSE)
属性是R语言对象的一部分。主要包括以下几种:名字(names,dimnames),维度(dimensions,包括矩阵等),类别(class,包括数字、整数等),长度(length),以及其他。可通过
attributes()
函数查看对象的属性,不是所有对象都有属性,如果没有则返回NULL。1. 向量
向量(vector)是R语言中最基本的数据类型,执行组合功能的函数
c()
可用来创建向量。各类向量如下例所示:
a <- c (1, 2, 7, -4, 5) ## numeric b <- c ("Rice", "Wheat") ## character c <- c (TRUE, TRUE, FALSE, TRUE) ## logical d <- c (1+0i, 2+4i) ## complex e <- c (9:17) ## integer
注意:单个向量中的数据必须拥有相同的类型(数值型、字符型或逻辑型)。
创建空向量可以使用
vector()
函数。例如创建一个指定长度为10、类型为数值型的空向量:> x <- vector("numeric", length = 10) > x [1] 0 0 0 0 0 0 0 0 0 0
另外,标量是只含一个元素的向量,它们用于保存常量。例如
f <- 3 g <- "US" h <- TRUE
2. 矩阵
矩阵(matrice)是具有维度属性的向量,矩阵都是二维的,和向量类似,矩阵中也仅能包含一种数据类型。
主要有三种创建矩阵的方法:
(1)直接创建
例:数字1-20自动创建为一个5行4列的矩阵,自动填充第一列之后开始填充第二列
y <- matrix(1:20, nrow = 5, ncol = 4) > y [,1] [,2] [,3] [,4] [1,] 1 6 11 16 [2,] 2 7 12 17 [3,] 3 8 13 18 [4,] 4 9 14 19 [5,] 5 10 15 20 > dim(y) [1] 5 4 ##dim()看维度,5行4列
(2)矢量+维度向量
添加维度向量
dim()
是将矢量转变为矩阵的方法> m <- c(1:10) > m [1] 1 2 3 4 5 6 7 8 9 10 > dim(m) <- c(2,5) ##2行5列 > m [,1] [,2] [,3] [,4] [,5] [1,] 1 3 5 7 9 [2,] 2 4 6 8 10
(3)绑定行或列来创建矩阵
绑定行或绑定列可以通过
cbind()
和rbind()
来实现> x <- 1:3 > y <- 10:12 > cbind (x, y) x y [1,] 1 10 [2,] 2 11 [3,] 3 12 > rbind (x, y) [,1] [,2] [,3] x 1 2 3 y 10 11 12
3. 数组
数组(array)与矩阵类似,但是维度可以大于2。数组可通过array函数创建。
4. 列表
列表(list)是一种可包含多种不同类型对象的向量,是一些对象(或成分,component)的有序集合。
> x <- list(1, "a", TRUE, 1 + 4i) > x [[1]] [1] 1 [[2]] [1] "a" [[3]] [1] TRUE [[4]] [1] 1+4i
5.数据框
数据框(Data Frames)是一种特殊的列表,其中所用元素长度都相等,列表中的每个元素都可以看作一列,每个元素的长度可以看作行数。
创建显式数据框的方法是
data.frame()
> ID <- c(1,2,3,4) > age <- c(25,26,55,43) > diabetes <- c("Type1","Type2","Type3","Type1") > status <- c("Poor", "Improved", "Excellent","Poor") > data <- data.frame(ID, age, diabetes, status) > data ID age diabetes status 1 1 25 Type1 Poor 2 2 26 Type2 Improved 3 3 55 Type3 Excellent 4 4 43 Type1 Poor
参考资料:
1. Coursera视频课程:https://www.coursera.org/learn/r-programming/home/welcome R Programming, Johns Hopkins University
2. https://bookdown.org/rdpeng/rprogdatascience/R Programming for Data Science
3. 《R语言实战》 Robert I. Kabacoff -
vb.net在textbox中二维数组的读取和写入
2019-02-22 16:22:37在学习中遇到从列表框读取多维数组的问题,例如在textbox中有一个二维数组如下 那么如何将其写入数组array1(,)中呢。在这个问题中主要遇到的问题是将文本框中数组按行(vbcrlf)和空格(“ ”)分别split一次...在学习中遇到从列表框读取多维数组的问题,例如在textbox中有一个二维数组如下
那么如何将其写入数组array1(,)中呢。在这个问题中主要遇到的问题是将文本框中数组按行(vbcrlf)和空格(“ ”)分别split一次,在textbox的属性中有lines可以轻松的读取改行的信息。故创建如下ui及代码进行实验。Public Class Form1 Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click TextBox2.Text = TextBox1.Lines(1) TextBox3.Text = TextBox1.Lines.Count Dim array1() As String Dim array2(,) As String Dim i, k, m As Integer array1 = Split(Trim(TextBox1.Lines(0)), " ") i = TextBox1.Lines.GetUpperBound(0) For k = 0 To i array1 = Split(Trim(TextBox1.Lines(k)), " ") m = array1.GetUpperBound(0) ReDim Preserve array2(i, m) For j As Integer = 0 To m array2(k, j) = array1(j) Next Next Dim z, x As Integer For z = 0 To array2.GetUpperBound(0) For x = 0 To array2.GetUpperBound(1) TextBox4.Text += array2(z, x) & " " Next TextBox4.Text += vbCrLf Next End Sub End Class
-
javascript 数组
2009-10-30 10:49:00options数组 该数组是select对象的一个属性,即选择框中的所有选项()的一个列表。 属性 defaultSelected 选项列表中的缺省选项 index 选项列表中某选项的索引位置 length 选项列表中的选项数() name 选项列表的名字...<textarea cols="50" rows="15" name="code" class="javascript">options数组 该数组是select对象的一个属性,即选择框中的所有选项(<OPTION>)的一个列表。 属性 defaultSelected 选项列表中的缺省选项 index 选项列表中某选项的索引位置 length 选项列表中的选项数(<OPTIONS>) name 选项列表的名字(NAME特性) selected 表示选项列表中某选项<OPTION>是否被选中的一个布尔类型值 selectedIndex 选项列表中已选中的<OPTION>的索引(位置) text 选项列表中<OPTION>标记后的文本 value 选项列表中的VALUE=特性 Array 数组 1. var array = new Array(12,23......);//创建数组,初始化数组值为:12,13.... 2. var array = new Array(12);//创建数组,数组大小为12 3. var array = new Array();//创建数组 for (var i = 0; i < length; i++) { aCity[i] = new Array();//创建二维数组 } for (var i = 0; i < length; i++) { for (var j = 0; j < length; j++) { aCity[i][j] = "";//给二维数组赋值 aCity[i][j] = ""; } } 例子: 通过声明二维数组绑定SELECT下拉菜单 <HTML> <HEAD> <TITLE>动态改变下拉菜单内容示例</TITLE> </HEAD> <SCRIPT LANGUAGE=javascript> //定义一个二维数组aArray,用于存放城市名称。 var aCity=new Array(); aCity[0]=new Array(); aCity[1]=new Array(); aCity[2]=new Array(); aCity[3]=new Array(); //赋值,每个省份的城市存放于数组的一行。 aCity[0][0]="--请选择--"; aCity[1][0]="--请选择--"; aCity[1][1]="广州市"; aCity[1][2]="深圳市"; aCity[1][3]="珠海市"; aCity[1][4]="汕头市"; aCity[1][5]="佛山市"; aCity[2][0]="--请选择--"; aCity[2][1]="长沙市"; aCity[2][2]="株州市"; aCity[2][3]="湘潭市"; aCity[3][0]="--请选择--"; aCity[3][1]="杭州市"; aCity[3][2]="苏州市"; aCity[3][3]="温州市"; function ChangeCity() { var i,iProvinceIndex; iProvinceIndex=document.frm.optProvince.selectedIndex; iCityCount=0; while (aCity[iProvinceIndex][iCityCount]!=null) iCityCount++; //计算选定省份的城市个数 document.frm.optCity.length=iCityCount;//改变下拉菜单的选项数 for (i=0;i<=iCityCount-1;i++)//改变下拉菜单的内容 document.frm.optCity[i]=new Option(aCity[iProvinceIndex][i]); document.frm.optCity.focus(); } </SCRIPT> <BODY ONfocus=ChangeCity()> <H3>选择你所在的省份及城市</H3> <FORM NAME="frm"> <P>省份: <SELECT NAME="optProvince" SIZE="1" ONCHANGE=ChangeCity()> <OPTION>--请选择--</OPTION> <OPTION>广东省</OPTION> <OPTION>湖南省</OPTION> <OPTION>浙江省</OPTION> </SELECT> </P> <P>城市: <SELECT NAME="optCity" SIZE="1"> <OPTION>--请选择--</OPTION> </SELECT> </P> </FORM> </BODY> </HTML> </textarea>
-
javascript数组
2009-10-30 09:57:00options数组 该数组是select对象的一个属性,即选择框中的所有选项()的一个列表。 属性 defaultSelected 选项列表中的缺省选项 index 选项列表中某选项的索引位置 length 选项列表中的选项数() name 选项列表的名字... -
Creator中关于列表框的使用
2006-05-16 10:54:00绑定列表框组件的item到ArrayList或Option[]ArrayList要求包含的数组是Option[]3.绑定列表框组伯的selected到String[]4.可以从selected绑定的String[]属性去获得所selected的东东即值列表5.可以修改ArrayList -
闲情——C语言指针和数组的探索
2017-04-19 18:33:57objc_property_t *class_copyPropertyList(Class cls, unsigned int *outCount)函数是runtime中的一个函数,用来 copy 一份类对象的属性列表,返回值为objc_property_t *类型的数组。然后就可以遍历这个数组取出每个... -
第六章 第五节 选择控件——列表框和组合框
2016-09-11 15:41:45vb学习总结, 列表框 1、属性 1、columns 该属性用来确定列表的列数。当该属性设置为0(默认)是,所用的项目呈单列显示。...list属性保存了列表框中所有值得数组,可以通过下标访问数组中的值(下标值从 -
Spring MVC的数据绑定(复杂数据绑定——数组与集合)
2020-05-20 20:29:13定义了 name 属性相同而 value 属性值不同的复选框控件,并在每一个复选框对应的行中编写了一个对应用户,在单击"删除"按钮执行删除操作时,表单会提交到一个以 “/DeleteUsers” 结尾的请求中。 <%@ page ... -
iOS属性列表
2015-05-14 23:48:38属性列表文件是一种XML文件,Foundation框架中的数组和字典等都可以于属性列表文件相互转换。 NSArray类常用读写属性列表文件的方法: +arrayWithContentsOfFile:类级构造方法,用于从属性列表文件中读取数据... -
Spinner列表选择框
2019-09-24 03:00:25Spinner首先它是一个弹出式的列表选择框,由于间接继承了ViewGroup,所以它可以当做一个容器使用; 如果我们可以明确下拉列表中的列表项, 则可以不需要编写代码, 只需要为spinner指定android:entries属性即可. 该属性... -
JavaScript对象与数组参考大全4
2008-06-11 17:53:00B.22 options数组 该数组是select对象的一个属性,即选择框中的所有选项()的一个列表。 属性 defaultSelected 选项列表中的缺省选项 index 选项列表中某选项的索引位置 length 选项列表中的选项数() name 选项... -
KnockoutJS更新数组某一项数据
2019-01-05 15:17:17KnockoutJS是一个JavaScript实现...本文主要实现官网没有提到的更新数组绑定中的某一项数据时的操作,首先克隆该对象并更改后进行替换,从而达到更新的目的。这样可以避免重新绑定数组并更新整个列表。 <!D... -
[js框架]Vue框架的基础学习 三、列表渲染
2018-05-15 10:20:30v-for指令 v-for指令根据一组数组的选项列表进行渲染。v-for 指令需要使用 item in items 形式的特殊语法,items 是源数据数组并且 item 是数组元素迭代的别名。例如:结果:在 v-for 块中,我们拥有对父作用域属性... -
ios学习笔记——属性列表
2015-09-25 10:09:00属性列表文件是一种XML文件,Foundation框架中的数组和字典等都可以与属性列表文件互相转换。 通过直接操作属性列表,可以实现数据持久化。 二、数组和字典读写 NSArray读写属性列表的方法: + (NSArray<... -
iOS-数据持久化-属性列表
2015-12-03 15:56:00属性列表文件是一种XML文件,Foundation框架中的数组和字典等都可以于属性列表文件相互转换。 NSArray类常用读写属性列表文件的方法: +arrayWithContentsOfFile:类级构造方法,用于从属性列表文件中读取数据,... -
iOS开发备忘录:属性列表文件数据持久化
2019-09-21 04:02:26属性列表文件是一种XML文件,Foundation框架中的数组和字典等都可以于属性列表文件相互转换。 NSArray类常用读写属性列表文件的方法: +arrayWithContentsOfFile:类级构造方法,用于从属性列表文件中读取数据,... -
基本组件之列表选择框
2015-08-13 19:11:03使用spinner组件,android:entries用于指定列表项,如果布局文件不指定该属性,android:prompt用于指定列表选择框的的标题,在android(4.0)中采用默认主题是设置该属性看不到具体效果,如果采用Theme.Black,就可以在... -
Android——列表选择框(Spinner)
2014-11-16 15:23:00通常情况下,如果列表选择框中要显示的列表项是可知的,那么可以将其保存在数组资源文件中,然后通过数组资源来为列表选择框指定列表项。这样就可以在不编写Java代码的情况下实现一个下拉选择框。 1.在布局文件中... -
element-ui根据指定条件,实现table-component组件的多选框中,某几行数据的多选框不可选
2021-01-30 17:28:29一开始,我想的是通过table-component上绑定的onselectionChange方法,获取当前选中数据的数组。再使用foEach遍历,判断选中数据的数组中有无属性**isCarrayForward == “02”**的数据,只要有1 -
Objective-C之数据持久化-属性列表
2015-09-15 15:58:20泛舟湖上,波光闪,迷了眼 夜幕降临,珠光闪,醉了心 (图引自百度图库) 上一站已介绍了数据持久化,不再赘述,这站我们开始一起学习属性列表、对象...属性列表文件是一种XML文件,Foundation框架中的数组和字典等 -
React/Vue中的key有什么作用?为什么遍历列表时,key最好不要用index?
2021-01-18 23:33:56前端开发中,只要涉及到列表渲染,那么无论是Angular、React还是Vue框架,都会提示或要求每个列表项使用唯一的key,那很多开发者就会直接使用一个唯一的id或数组的index作为key的值,而并不知道使用key的原理。... -
列表控件
2013-08-14 19:24:16listBox列表框控件可选多。SelectedItems属性表示所有选定的项目(对象)的集合...SelectedIndex返回对应于列表框中第一个选定项的整数值 ComboBox组合框控件只选一:SelectedIndex返回对应于列表框中选定项的整数值 -
iOS中 数据持久化的方法
2015-10-09 09:21:53属性列表文件是一种XML文件,Foundation框架中的数组和字典等都可以于属性列表文件相互转换。 NSArray类常用读写属性列表文件的方法: +arrayWithContentsOfFile:类级构造方法,用于从属性列表文件中读取
-
MySQL 多平台多模式(安装、配置和连接 详解)
-
域名销售管网站源码 自适应电脑 手机端.zip
-
bug Error: Cannot find module ‘vue-loader-v16/package.json‘的解决办法
-
基于ssm框架的名宿网站的设计与实现
-
重庆理工大学《大学物理》习题册答案.pdf
-
视觉SLAM十四讲从理论到实践|5-opencv|a_opencv.cpp
-
重庆理工大学《概率论与数理统计》3套历年期末考试试卷(含答案).pdf
-
华为1+X——网络系统建设与运维(高级)
-
基于ssm的汽车租赁系统的设计与实现
-
java第一次作业
-
【脑图】Redis笔记(春招必备)
-
MySQL 设计基础(数据库概论、初探)
-
7-2 装箱问题
-
牛牛量化策略交易
-
MMM 集群部署实现 MySQL 高可用和读写分离
-
重庆理工大学《概率论与数理统计》5套期末复习题(含答案).pdf
-
毕业设计+源码).pdf
-
Java ssm 完整项目(包括数据库).zip
-
jvm学习的思维导图
-
MySQL 函数、用户自定义函数