Python csv 两种方法 实现 碱基合并 pandas

方法一:(list,逐行合并,速度略慢)

    import csv
    f = open("C:\\Users\\windows10\\Desktop\\Python练习\\文本流\\raw循环合并.csv")
    csv_reader = csv.reader(f,dialect='excel')         # dialect='excel'为EXCEL编码风格,否则无法读取首行
    
li = []		#避免list,str等系统字眼
lis = []
for line in csv_reader:
    for i in range(0,len(line),2):
        s = line[i] + line[i + 1]   #迭代合并碱基
        li.append(s)    	#不可用 li = li.append(s),因为None的列表append是没有返回值的。
    lis.append(li)
print(lis) 

方法二:(pandas,dataframe,列索引合并,速度快)

    import pandas as pd
    import numpy as np
    from pandas import DataFrame as df
    
path = "C:\\Users\\windows10\\Desktop\\Python练习\\文本流\\raw循环合并.csv"
f = open(path)   #文件名有中文时,必须加open步骤
data = pd.read_csv(f,header = None)
# =============================================================================
# print(data)
# print(type(data))
# print(data.iloc[:,0] + data.iloc[:,1])
# print(data.shape)
# k = data.iloc[:,0] + data.iloc[:,1] 
# li = list(k)
# li
# 
# type(li)
# =============================================================================

li = []
for i in range(0, 16, 2):
    s = data.iloc[:,i] + data.iloc[:,i + 1]
    s = list(s)
    li.append(s)
print(li)
li = df(li).T
print(li)

猜你喜欢

转载自blog.csdn.net/qq_40256654/article/details/84364067
今日推荐