【Python】批量读取csv文件的第一列,并整合到嵌套列表中

批量读取csv文件的python包有很多,选取第一列中这里使用的包是numpy中的read_csv函数

下面是代码,

主要的思路是先将csv文件读取,

再通过for循环遍历文件提取第一列,

然后加入到列表中。

import xlrd
import numpy as np
import glob, os
import pandas as pd
path = r'C:\Users\12738\Desktop\gene' #设置基础路径
file_kegg = glob.glob(os.path.join(path, "gseKEGG_*_ko_genelist.csv"))
kegglist = []
totallist = []
print(len(file_kegg)) #查看读取文件数目
#通过for循环将读取的文件数据放入列表
for i in range(0, len(file_kegg)):
    # datalist = pd.read_csv(files, index_col=None, encoding='UTF8', usecols=[1])
    kegglist = pd.read_csv(file_kegg[i], index_col=False, encoding='UTF8', usecols=[1]) #批量读取每个文件的第一列,具体参数搜索pd.read_csv用法,[0]列是行名
    data_array = np.array(kegglist) #将dataframe 转换为矩阵
    data_list = data_array[:, 0] #取出二维矩阵的第一列,此步必要,因为是二维矩阵,否则会生成嵌套列表
    data_list = data_list.tolist()#将一维矩阵转化为列表
    #data_list = set(data_list) #嵌套数组可选
    totallist.append(data_list)#总嵌套列表
print(totallist)

在totallist里面会生成一个类似于[[1,2,3,4],[1,2,6,5],[5,6,7]]的列表,处理文字较为方便

如果使用set函数就会生成类似于[{1,2,3,4},{1,2,6,5},{5,6,7}]的嵌套数组,处理数字较为方便

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值