# 一、R基本操作# 1、将数据文件mydata1.txt按照以下要求整理成标准形式。#(1)读入数据文件mydata.txt命名为insurance。insurance<-read.table("mydata1.txt")head(insurance)dim(insurance)#192个数据#(2)将insurance转换为3列的矩阵。insurance<-matrix(insurance$V1,nrow = 64,ncol = 3)#nrow =192/3=64insurance#(3)将insurance转换为数据框。insurance<-as.data.frame(insurance)class(insurance)#(4)将列名命名为"District", "Holders"和"Claims"。names(insurance)<-c("District", "Holders","Claims")insurance#(5)随机无放回抽取50行数据。sub<-insurance[sample(1:nrow(insurance),50),]#无放回不用设置replacesub#(6)将抽样数据写入result1.txt。write.table(sub,"result1.txt",row.names = FALSE)####################################################################### 2、将数据文件mydata2.txt按照以下要求整理成标准形式。#(1)读入数据文件mydata2.txt命名为iris。iris<-read.table("mydata2.txt")head(iris)dim(iris)#600个数据#(2)将iris转换为4列的矩阵。iris<-matrix(iris$V1,nrow = 150,ncol = 4)#nrow =600/3=150iris#(3)将iris转换为数据框。iris<-as.data.frame(iris)class(iris)#(4)将列名命名为"Sepal.Length", "Sepal.Width", "Petal.Length", "Petal.Width"。names(iris)<-c("Sepal.Length", "Sepal.Width", "Petal.Length", "Petal.Width")iris#(5)随机无放回抽取90行数据。sub<-iris[sample(1:nrow(iris),90),]#无放回不用设置replacesub#(6)将抽样数据写入result2.txt。write.table(sub,"result2.txt",row.names = FALSE)####################################################################### 3.将数据文件data.csv按照以下要求进行数据预处理。#(1)读入数据文件data.csv命名为nhanes2。nhanes2<-read.csv("data.csv")#(2) 载入缺失值处理所需要的包。install.packages("lattice")install.packages("MASS")install.packages("nnet")library(lattice)library(MASS)library(nnet)#(3) 判断nhanes2是否存在缺失值。sum(is.na(nhanes2))#(4) 利用插补法处理chl变量的缺失值。sub=which(is.na(nhanes2[,4])==TRUE)#在数据集中chl变量是第4列,返回nhanes2数据集中第4列为NA的行dataTR<-nhanes2[-sub,]#将第4列不为NA的数存入数据集dataTRdataTE<-nhanes2[sub,]#将第4列为NA的数存入数据集dataTE中dataTE[,4]<-sample(dataTR[,4],length(dataTE[,4]),replace = T)#在非缺失值中简单抽样dataTE #(5) 将插补法处理后的数据写入result3.txt。write.table(dataTE,"result3.txt",row.names = FALSE)#############################################################################################################################################二、函数调用#1、测得某班学术X(身高(cm))与Y(体重(kg))的数据如下,试画出散点图,建立线性回归方程,并作进一步分析。# (1) 建立数据集,并画出散点图,考察数据点的分布趋势,看是否呈直线条状分布。x1<-c(171,175,159,155,152,158,154,164,168,166,159,164)#身高y1<-c(57,64,41,38,35,44,41,51,57,49,47,46)#体重#构建数据集model <- data.frame(x1,y1) #探索性分析-做散点图查看数据的分布情况:plot(x1,y1)# (2)进行回归分析,列出回归方程,画拟合线,并对结果进行解读。# 用lm()函数构建模型lm.reg<-lm(y1~ x1)# 添加回归曲线查看拟合效果 abline(lm.reg) #模型解读summary(lm.reg)# (3)对回归系数进行假设检验。anova(lm.reg) # 回归模型的方差分析summary(lm.reg) #回归系数t检验:提取模型计算结果,其中有t检验的结果# (4)对回归模型进行诊断。#模型检验对方程进行进一步检验,以检查回归方程是否满足模型的先验条件及模型的稳健性。par(mfrow=c(2,2))#画布分面plot(lm.reg)#结果解读:#1.左上图:残差与拟合图,理论上散点应该散乱的分布在横线两侧;#2.右上图:正太Q-Q图,用于检验因变量的正太分布性,若服从正太分布,则散点应分布在一条直线线#3.左下图:齐方差检验,若满足其方差,则散点在水平线周围随机分布#4.右下图:独立性检验,即一个样本是否会影响另一个样本##################################################################2、研究某抗心律失常药对电刺激狗右心室致颤阙的影响,实验测得狗静脉注射不同剂量的抗心律失常药与右心室致颤阙的数据如下,试画出散点图,建立线性回归方程,并作进一步分析。# (1) 建立数据集,并画出散点图,考察数据点的分布趋势,看是否呈直线条状分布。x <- c(1,3,5,7,9)y <- c(8.03, 14.97, 19.23, 27.83, 36.23)#构建数据集model <- data.frame(x,y) #探索性分析-做散点图查看数据的分布情况:plot(model)#画散点图# (2)进行回归分析,列出回归方程,画拟合线,并对结果进行解读。# 用lm()函数构建模型fm <- lm(y ~ x)#建立回归模型fm# 添加回归曲线查看拟合效果abline(fm)# 添加回归曲线至散点图 #模型解读summary(fm)# (3)对回归系数进行假设检验。anova(fm) # 回归模型的方差分析summary(fm) # 提取模型计算结果,其中有t检验的结果# (4)对回归模型进行诊断。#模型检验对方程进行进一步检验,以检查回归方程是否满足模型的先验条件及模型的稳健性。par(mfrow=c(2,2))#画布分面plot(fm)#结果解读:#1.左上图:残差与拟合图,理论上散点应该散乱的分布在横线两侧;#2.右上图:正太Q-Q图,用于检验因变量的正太分布性,若服从正太分布,则散点应分布在一条直线线#3.左下图:齐方差检验,若满足其方差,则散点在水平线周围随机分布#4.右下图:独立性检验,即一个样本是否会影响另一个样本################################################################### 3、countries数据集含有69个国家和地区的出生率与死亡率。# (1) 请使用K-均值聚类将样本点聚为3个类别。countries=read.csv("countries.csv")head(countries)#查看前6行names(countries)=c("country","birth","death")#修改变量名称var=as.character(countries$country)#将变量country转为字符型并赋值给varfor(i in 1:69) row.names(countries)[i]=var[i]#将数据集的行名命名为国家名称km1=kmeans(countries[,-1],center=3)#用kmeans算法对countries数据集进行聚类# (2) 输出聚类结果及各类别的中心点坐标。km1$cluster#获取类别km1$centers#获取中心点坐标# (3) 绘制聚类结果将中心点以星号标识。#画出聚为四类的类别图,标注中心点。plot(countries[,-1],pch=c(1,2,3))#将中心点用星号标示出来points(km1$centers,pch=8,col="red")#对中心点添加标注legend(km1$centers[1,1],km1$centers[1,2],"Center_1",bty="n",xjust=0.5,cex=0.8)legend(km1$centers[2,1],km1$centers[2,2],"Center_2",bty="n",xjust=0.5,cex=0.8)legend(km1$centers[3,1],km1$centers[3,2],"Center_3",bty="n",xjust=0.5,cex=0.8)# (4) 判断与中国大陆同属于一个类别的国家和地区有哪些。cluster_CHINA=km1$cluster[which(countries$country=="CHINA")]which(km1$cluster==cluster_CHINA)###############################################################################################################################三、数据分析# 1、使用arules软件包中的Groceries数据集,该数据集是某一食品杂货店一个月的真实交易数据,使用R完成以下要求:(软件包:arules;数据集:Groceries; 函数:apriori())# (1)利用apriori()函数进行关联分析,支持度为0.01,置信度为0.5。install.packages("arules")library(arules)data("Groceries")rules0<-apriori(Groceries,parameter=list(support=0.01,confidence=0.5))inspect(rules0[1:10])# (2)利用sort()函数按照支持度排序。rules.sorted_sup<-sort(rules0,by="support")inspect(rules.sorted_sup[1:5])# (3)捆绑销售:寻找蛋黄酱(mayonnaise)的捆绑商品。(supp=0.001,conf=0.1,minlen=2, maxlen=6)rules1=apriori(Groceries,parameter=list(minlen=2,maxlen=6,supp=0.001,conf=0.1),appearance=list(rhs="mayonnaise",default="lhs"))inspect(rules1)# (4)查看销量最高的商品。itemsets_apr=apriori(Groceries,parameter=list(supp=0.001,target="frequent itemsets"),control=list(sort=-1))inspect(itemsets_apr[1:5])# (5)适合捆绑销售的商品。(supp=0.001,minlen=2, maxlen=3)itemsets_apr1=eclat(Groceries,parameter=list(supp=0.001,minlen=2,maxlen=3,target="frequent itemsets"),control=list(sort=-1))inspect(itemsets_apr1[1:5])# (6)关联规则的可视化(support=0.001,con=0.5)install.packages("arulesViz")library(arulesViz)rules5=apriori(Groceries,parameter=list(support=0.002,con=0.5))rules5plot(rules5)######################################################################## 2、根据breast-cancer-wisconsin.csv威斯康星州乳腺癌数据集,通过对数据的分析,提取出关键特征来判断乳腺癌患病情况。(软件包:rpart;函数:rpart()。)# (1)属性名依次设置为"编号","肿块厚度","肿块大小","肿块形状","边缘黏附","单个表皮细胞大小","细胞核大小","染色质","细胞核常规","有丝分裂","类别"),并将类别为2的设为"良性",为4的设为"恶性"。install.packages("rpart")library(rpart)install.packages("rpart.plot")library(rpart.plot)#############加载数据breast.cancer<-read.csv('breast-cancer-wisconsin.csv',header=F)head(breast.cancer)#数据整理names(breast.cancer)=c("编号","肿块厚度","肿块大小","肿块形状","边缘黏附","单个表皮细胞大小","细胞核大小","染色质","细胞核常规","有丝分裂","类别")breast.cancer$类别[breast.cancer$类别==2]="良性"breast.cancer$类别[breast.cancer$类别==4]="恶性"head(breast.cancer)# (2)抽取训练数据集为原数据的70%,测试数据集取30%。#数据预处理(分层抽样,划分训练集和测试集)#分别计算良性和恶性组中应抽取测试集样本数,记为a,ba=round(0.3*sum(breast.cancer$类别=="良性"))b=round(0.3*sum(breast.cancer$类别=="恶性"))ab #输出a,b值install.packages("sampling")library(sampling)#使用strata函数对数据集中的“分组油耗”变量进行分层抽样sub=strata(breast.cancer,stratanames="类别",size=c(b,a),method="srswor")sub #所抽出的所有测试集样本信息#生成训练集train1和测试集test1train1=breast.cancer[-sub$ID_unit,]test1=breast.cancer[sub$ID_unit,]nrow(train1)nrow(test1) #显示训练集和测试集的行数,检查两者比例是否为7:3# (3) minsplit=5,建立决策树。#CART建立分类树formula_cla=类别~肿块厚度+肿块大小+肿块形状+边缘黏附+单个表皮细胞大小+细胞核大小+染色质+细胞核常规+有丝分裂cla1=rpart(formula_cla,train1,method="class",minsplit=5)#cla1# (4)选择cp=0.05来剪枝。######修改cp的值cla2=rpart(formula_cla,train1,method="class",minsplit=5,cp=0.05)cla2# (5)画出type为2和4的树图。rpart.plot(cla1,type=2)#修改typerpart.plot(cla1,type=4) # (6)测试数据进行预测,并输出混淆矩阵,给出模型准确率为。#预测pre1=predict(cla1,test1,type="class")pre1table(test1$类别,pre1)#获取混淆矩阵#计算样本错误率error1<-sum(as.numeric(pre1!=test1$类别))/nrow(test1)error1#################################################################### 3、美国科罗拉多州某加油站连续 57 天的OVERSHORTS序列“OVERSHORTS.csv”# (1) 判断该序列的平稳性与纯随机性。# (时序图检验、白噪声检验)install.packages("fUnitRoots")install.packages("TSA")install.packages("forecast")install.packages("zoo")library(fUnitRoots)library(TSA)library(forecast)library(zoo)#读取数据c<-read.csv("OVERSHORTS.csv")#转换为时间序列overshort<-ts(c$overshort,start = 1)#平稳性,纯随机(白噪声检验)## 绘制序列的时间序列图plot.ts(overshort, xlab = "time", ylab = "prop")##对序列做单位根检验unitrootTest(overshort)##对序列做白噪声检验Box.test(overshort, lag = 1, type = "Ljung-Box")# (2) 如果序列平稳且非白噪声,选择适当模型拟合该序列的发展。(10分)# (模型的识别、参数估计(模型显著性、模型参数的显著性))#模型识别##观察自相关,偏自相关图,模型定阶par(mfrow=c(1,2))acf(overshort)###衰减到零是突然的,所以自相关系数1阶截尾pacf(overshort)### 衰减到零不是突然的,所以偏相关系数托尾# 推荐模型为 MA(1)##或者对序列进行模型识别,自动定阶auto.arima(overshort)# 推荐模型为 MA(1)#参数估计###模型检验x.fit<-arima(overshort,order=c(0,0,1),method="ML")x.fit##对残差x.fit$residual进行白噪声检验for(i in 1:2) print(Box.test(x.fit$residual,lag=6*i))##P>0.05,接受原假设,即残差为白噪声,所以拟合模型显著有效####参数检验###模型参数的显著性检验t1<--0.8477/0.1206pt(t1,df=56,lower.tail=T) ###p<0.05参数显著非零t0<--4.7942/1.0253pt(t0,df=56,lower.tail=T) ###p<0.05参数显著非零# (3) 利用拟合模型,预测该加油站未来5天的OVERSHORTS。(10分)# (模型预测、绘制预测图)####模型预测c<-read.csv("OVERSHORTS.csv")x<-ts(c$overshort,start=1)x.fit<-arima(x,order=c(0,0,1))x.fitx.fore<-forecast(x.fit,h=5)#预测x.foreplot(x.fore)###############################################################4、使用是survival软件包中的“pbc”数据集,该数据集记录的是肝硬化数据, 使用R完成一下要求:(软件包:survival;数据集:pbc; 函数:Surv()、survfit()、survdiff()、coxph()、cox.zph(), 将答案保存在“姓名.doc”文件中。)# (1)生成生存分析对象,拟合生存曲线模型。install.packages("survival") #安装survival包library(survival) #加载survival包#使用survival包自带的“pbc”数据集为例(418*20) data("pbc")str(pbc)head(pbc)#生成生存分析对象Sur_Obj<-Surv(pbc$time,pbc$status)Sur_Obj#拟合曲线模型model<-survfit(Sur_Obj~1) summary(model)# (2)两种方法绘制生存曲线。plot(model,ylab = "生存率",xlab="天")#用survminer进行漂亮的展示install.packages("survminer")library(survminer) ggsurvplot(model, data = pbc)# (3)进行单因素比较分析,并进行结果解释。#survdiff(formula)函数进行log-rank检验。survdiff(Sur_Obj~pbc$trt) #trt是分组条件# (4)考虑年龄,性别以及trt是否会影响肝硬化的生存时间,进行多因素分析Cox模型的建立,并进行结果解释。coxmodel<-coxph(Sur_Obj~pbc$age+pbc$sex+pbc$bili)coxmodel# (5)模型诊断——PH检验。zphmodel<-cox.zph(coxmodel)zphmodel############################################################### 5、life.csv为50位急性淋巴细胞白血病病人的数据,包括:入院治疗时取得外辕血中细胞数X1,淋巴结浸润等级X2,出院后有无巩固治疗X3(1表示有巩固治疗,0表示无巩固治疗);随访后,变量Y=0表示生存期在1年以内,Y=1表示生存时间在1年以上,使用R完成一下要求:(函数:glm(),predict()。)# (1)建立全变量logistic回归,对模型结果进行解释。life<-read.csv("life.csv")#建立全变量logistic回归glm.sol<-glm(Y~X1+X2+X3, family=binomial, data=life)#回归模型解读summary(glm.sol)# (2)预测当X1=5,X2=2,X3=0时,y的概率是多少?pre<-predict(glm.sol, data.frame(X1=5,X2=2,X3=0))p<-exp(pre)/(1+exp(pre))p# (3)预测当X1=5,X2=2,X3=1时,y的概率是多少?(6分)pre<-predict(glm.sol, data.frame(X1=5,X2=2,X3=1))p<-exp(pre)/(1+exp(pre))p# (4)对回归模型参数进行检验,用step()函数做变量筛选。step(glm.sol)glm.new<-glm(Y~X2+X3, family=binomial, data=life)summary(glm.new)# (5)对筛选后的变量进行建模,预测。pre<-predict(glm.new, data.frame(X2=2,X3=0))p<-exp(pre)/(1+exp(pre))ppre<-predict(glm.new, data.frame(X2=2,X3=1))p<-exp(pre)/(1+exp(pre))p决策树的典型算法有ID3,C4.5,CART等。国际权威的学术组织,数据挖掘国际会议ICDM (the IEEE International Conference on Data Mining)在2006年12月评选出了数据挖掘领域的十大经典算法中,C4.5算法排名第一。
悬赏R语言作业答案
给您推荐相同类型的内容:
js获取上一个月份
1、根据输入的日期,获取年,月,日信息。2、根据月信息,减去一个月,就是上一个月。注意1月份是上一年的12月份。3、然后再拼接成日期格式根据上面步骤,可以写对应的功能函数** * 获取上一个月 *JavaScript中 0==null为何是false
null代表的是对象用typeof 运算符可以检测出来null的结果为Object类型值,null只不过在隐式转换的时候被转换成0来计算而已,但是null实际代表的是一个空对象的指针,而且undefined是由 null派生出来的, 所css 文字加粗字体加粗代码有哪些加粗方式
css里文字加粗的步骤如下:1、首先新建一个17.html。2、然后输入html5标准声明。3、输入后可以看到html网页的结构。4、再在header标签中添加style层叠样式。5、把body标签的文字加粗。6、最后使用浏览器打开网页就如何搭建python自动化测试框架
1新建一台Jenkins服务器,安装并配置好Jenkins2配置一个自动化测试脚本的代码库,可以使用Git或者SVN等版本控制工具。然后在Jenkins服务器上配置一个Job,负责自动的同步最新代码到Jenkins服务器上。3配置要跑自动化9个原生js库助力前端开发,你都用过吗?
1、cypress Cypress是新一代前端测试框架,它基于node js。解决了开发人员和QA工程师在测试现代应用程序时面临的关键难点问题。 2、rollup rollup是一款小巧的javascript模块打包工具,更适合怎样用JS给option添加“选中”属性?
一、解析字符串。首先:考虑应该字符串解析成数组。var ps = value.split(",")然后:循环该数组。for(var i = 0i <ps.lengthi++) {比较逻辑稍后写.net字符窜在outlook上邮件地址
题主是否想询问“c语言net字符窜在outlook地址不显示”?系统bug。c语言是一款编程软件,用户在使用时net字符窜在outlook地址不显示是系统bug造成的,只需要关闭程序重新打开即可。 一、操作系统: Micro求代码。用c语言实现炸弹俄罗斯方块,形状尽量多一些,取得一定成绩会自动清空图中方块。
你好。试试这个#include #include #include #include #include #include #include #define ESC 0x011b#define UP 0x4800#define DOWN 0x微信小程序用什么语言开发
微信小程序用以下语言开发:一、HTML语言html是超文本标识语言的缩写,html它是网页开发的前端之一,主要负责网页的框架,就像动物的框架一样,html语言也是支持网页布局的框架。二、CSScss,前三剑客之二是分层风格表。主冶网页风格为什么网吧的网速比家里的快很多啊?
现在虽然家里都有了电脑,甚至一些资深的玩家电脑的配置也是更新升级到顶级配置,但是一个人在家玩游戏的氛围和网吧根本比不了。虽然现在很多的家庭电脑或者网络都已经是专业级,但是相比于网吧里面的配置和网络来说,还是不一样的,因为家里的很多宽带都是电请问abap开发和java开发哪个好一点?会java基础的话,abap就不难吗?
abap开发和java开发差不多。会java基础的话,abap相对上手比较快。有关开发问题,推荐千锋教育,千锋教育采用全程面授高品质、高体验培养模式,学科大纲紧跟企业需求,拥有国内一体化教学管理及学员服务,在职业教育发展道路上不断探索前行。java如何调用腾讯云nosql接口实现
String json = new GsonBuilder().serializeNulls().create().toJson(obj)String result = HttpClientUtil.executePostUrlQuietljs中 a : function(){}这是什么格式? 代表什么含义?怎样学习这样的格式?
function() {} 是匿名函数。a: function(){} 外部一定有一对 { },是Map的一个元素,a作为键名,匿名函数作为键值如 var s = { a: function() {}, b: "xxx"css样式的基本规则是什么?
1、选择器用于指定CSS样式作用的HTML对象,花括号内是对该对象设置的具体样式。2、属性和属性值以“键值对“ 的形式出现。3、属性是对指定的对象设置的样式属性,例如字体大小、文本颜色等。4、属性和属性值之间用英文“:“连接。5、多关于R语言函数
nrow(leadership)是leadership这个数据集的行数(可能就是样本数),1:nrow(leadership) 是一个向量,从1到nrow(leadership),sample(1:nrow(leadership)) 是将里Java 中的IDL是什么啊??
Java IDL(Interface Definition Language,接口定义语言)为 JavaTM 平台添加了 CORBA(Common Object Request Broker Architecture,公用对象请求代理体系结电脑怎么打开摄像头
打开方法如下:1.打开电脑,直接在电脑的搜索栏输入“相机”或者“摄像机”这两个字,就可以在出现的页面上看到相机程序。点击打开相机拍照。2.打开电脑,点击鼠标左下角的“开始”图标,向下滑动鼠标找到以“X”开头的应用,就可以看到相机程序了。点击css中图片使用背景色,但背景色没有显示?
css中图片使用背景色,但背景色没有显示?首先检查是不是存在用法错误或者拼写错误,正确的css设定背景的方法如下:<> <head> <title>背景颜色例项&a红心点赞按钮怎么做
需要学习JavaScript语言和HTML语言使用方法HTML结构该“点赞”红心按钮的HTML结构是将心形按钮放在一个超链接的后面或下面,它的HTML结果如下:<div class="feed" id=&qu怎么用R软件判断输入的数是奇数还是偶数
#1.如果总体是自然数这样的等差数列,可以直接利用seq函数挑出奇数(或偶数):n <- 1:100( ji <- seq(from=1,to=100,by=2) )( ou <- setdiff(n,jpython如何统计列表的长度
array = [0,1,2,3,4,5] ;print len(array) 6;同样,要获取一字符串的长度,也是用这个len函数,包括其他跟长度有关的,都是用这个函数。L1=len(list1) #列表list1的长度lis学习php必须要学习js吗
先不用学JS, 等你的PHP学到一定的程度,就会发现语言之间有许多地方是相通的, 到时再学JS也来得及。PHP里有相当的思想与JS是一致的, 致于面对对象的部分就更是如此。先抓紧时间,学会一种,什么都学,会造成什么也学不好,学到混乱了。PHcss如何把图片圆形
<div style="width:100pxheight:100pxborder-radius:50%overflow:hidden"><img src=""&a如何在没有电脑的情况下恢复手机被删掉的 照片
恢复删除的照片的详细步骤如下:1)准备:先将手机通过数据线连接电脑,并进行root操作。2)打开龙腾数据恢复软件,选择“U盘手机相机卡恢复”功能按钮。3)选择删除照片存储大致位置,然后进行下一步。4)进入扫描阶段,等待扫描结束。5)扫描完查css如何调整无序列表图片大小
如果是图片的尺寸太大,要修改小一些。这种情况,通常都是使用雪碧图或者字体图标来做的。当然如果这些都不能满足你的需求,你也可以直接放图片,可以自己处理一张符合你需求的尺寸图片,也可以忽略图片的大小,然后使用css调整图片的尺寸大小即可,但是像学习Python有什么好的书籍推荐
1.《Python编程从入门到精通》本书循序渐进、由浅入深地详细讲解了Python3语言开发的核心技术,并通过具体实例的实现过程演练了各个知识点的具体使用流程。通过两个综合实例的实现过程,介绍了Python 3语言在综合项目中的使用流程。笔记本电脑音箱听音乐用什么音箱效果比较好
复制的一位达人mrzhang2583的看看不错可以看看给笔记本配音箱,看你笔记本是不是经常到处走,如果你经常带着笔记本到处走,还要音箱跟着笔记本走,那就得用便携的了。便携音箱,尺寸一般比较小,用电池或USB供电,功率最多也就2瓦,从这,想都C语言中,什么叫Build操作
build在软件开发中特指将源代码编译成可执行的文件的操作,build的数字就是编译的次数。比如现在常用的windows2000的build是2195,就是说,这个系统是第2195次整体编译后的成果,平均每天1次的话要6年。由此可见编程的艰kingsoft是什么软件
kingsoft是金山软件。十六年来,金山一直不断地为客户带来创新性的技术和产品,树立了中国软件产业最耀眼的品牌。今天,金山软件已经运行在全世界超过5000万台个人、政府、企业的电脑上。其产品线覆盖了桌面办公、信息安全、实用工具、游戏娱乐js怎么把字符串转换
字符串变成数组就是把一个个的字符全部筛选出来1 正则表达式varstring=“abcdedef”var obj="string".replace((.)(?=[^$])g,"$1,").