全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 数据分析与数据挖掘
1706 1
2021-05-11
CDA人工智能学院致力于以优质的人工智能在线教育资源助力学员的DT职业梦想!课程内容涵盖数据分析机器学习深度学习人工智能tensorFlowPyTorch知识图谱等众多核心技术及行业案例,让每一个学员都可以在线灵活学习,快速掌握AI时代的前沿技术。PS:私信我即可获取CDA会员1个月免费试听机会

#第一部分

#先将当前文件夹下的所有以csv结尾的文件名读进来

filelist <- list.files(pattern=".*.csv")

#文件个数
m<-length(filelist)

#按照文件名逐个读入数据,得到数据列表
datalist <- lapply(filelist, function(x) read.csv(x,header=F,stringsAsFactors=F))


#第二部分

library(stringr)#没装的请先安装

cha1<-c("a1","b23","c4","d56","e","f4")#这是6个字符串,每个字符串里面都包含数字,考虑如何把数字提取出来

col1<-str_extract_all(cha1,"\\d")#得到字符串列表,每个元素对应每个字符串的数字,但是不是你想象的那样

#具体形式是这样的:如23,得到的是"2" "3",所以该怎样把它变成我们想要的数字23是个问题,解决方法如下:

  i<-1
  while(i<=length(col1)){
    if(length(col1[])==0) col1<-col1[-i] else i<-i+1#这一步是考虑把没有数字的字符串对应的列表元素删掉,比如说"e"
  }
  col11<-numeric(length(col1))
  for(i in 1:length(col1)){
    l1<-length(col1[])
    l11<-c()
    for(j in 1:l1)
     l11<-paste(l11,col1[][j],sep="")#将列表的每个元素连接起来,比如"2" "3"就变成了字符串"23"
    col11<-as.numeric(l11)#再将链接好的字符串进行数值化
  }  

col11<-col11[!duplicated(col11)]#有的数字在处理之后,即将字母去掉之后会有所重复,这步是向量去重处理(不需要去重的请忽略哈)

#补充两个个函数:
#1.删除字符串中的特定字符
gsub(a,b,c):将字符串c中的a字符用b字符进行替换,例如:

gsub(" ","","Lin hai")#这样可以删除字符串中的空格

#2.读取excel数据时指定行和列进行读取
library(data.table)
data1 <- fread("数据.csv", skip=1, nrows=100, select=c(1:50),data.table=F,header=F) #读取前五十列,前一百行
#其中skip是起始行,nrows是终止行,select是所要读取的列号(也可以写成列名,如select=c("X1", "X2"),表示读取列名为X1,X2的变量)




扫码关注CDA公众号,即可获取最新版数据分析题库大全CDA免费精品课70+


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2021-5-11 20:20:05
谢谢分享
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

分享

扫码加好友,拉您进群