您的位置:

python写入vcf,python写入html文件

本文目录一览:

python怎么写入csv文件

import pandas as pd#任意的多组列表a = [1,2,3]

b = [4,5,6]

#字典中的key值即为csv中列名dataframe = pd.DataFrame({'a_name':a,'b_name':b})#将DataFrame存储为csv,index表示是否显示行名,default=Truedataframe.to_csv("test.csv",index=False,sep='')1234567891011

a_name b_name0 1 41 2 52 3 61234

同样pandas也提供简单的读csv方法

import pandas as pddata = pd.read_csv('test.csv')12

会得到一个DataFrame类型的data,不熟悉处理方法可以参考pandas十分钟入门

另一种方法用csv包,一行一行写入

import csv

#python2可以用file替代open

with open("test.csv","w") as csvfile:

writer = csv.writer(csvfile)

#先写入columns_name

writer.writerow(["index","a_name","b_name"])

#写入多行用writerows

writer.writerows([[0,1,3],[1,2,3],[2,3,4]])12345678910

index a_name b_name0 1 31 2 32 3 41234

读取csv文件用reader

import csvwith open("test.csv","r") as csvfile:

reader = csv.reader(csvfile) #这里不需要readlines

for line in reader:

print line

将多个样本的vcf文件转化为Phylip输入格式的python脚本

但是phylip又不能直接把vcf文件作为输入文件,它的输入格式要求如下

第一行的两个数字分别为样本数和SNP数目

第二行的第一列为物种名称,一定要是10个字符的长度,长度不足可以用空格填充.第二列则是要用于比对的SNP序列。两列之间没有分隔符,而且后面的SNP每10个字符有一个空格.

python脚本如下:

可以选择输出fasta文件或者phy文件

python 如何将数据写入某个csv文件的特定位置?

#其实csv文件就是用逗号隔开的文本文件,

#所以只要用python中的open函数打开就可以了。

#我把修改后的文件存为b_out.csv了

b_int={}

for i in open('b.csv').readlines()[1:]:

    j=i.split(',')

    if len(j)2:

        b_int[j[0]]=j[4]

a_int=open('a.csv').readlines()

for i in range(1,len(a_int)):

    a_int_=a_int[i].rstrip().split(',')

    a_int_[-1]=b_int.get(a_int_[4],'0')

    a_int[i]=','.join(a_int_)+'\n'

open('b_out.csv','w').write(''.join(a_int))