基因型数据VCF转EXCEL亲测好用

import pandas as pd
df = pd.read_csv('shuju.vcf', sep='\t', comment='#', header=None,encoding='utf-8')
df.to_excel('outputFile2.xlsx', index=False,encoding='utf-8')

以上就是转成功的截图,需要注意的是一定要写入编码方式,UTF-8 ,第一次我没有写编码方式转换出的文件是乱码的。

需要注意的是以下这个代码可能有的代码会出现,但是现在已经不用了。

import sys

sys.setdefaultencoding('utf-8')

主要原因是Python3中移除了sys.setdefaultencoding这个函数。在Python2中,可以通过sys.setdefaultencoding来修改Python的默认编码:

但是在Python3中,这个函数被移除了。因为Python3的内部默认编码就是UTF-8,不再需要修改。所以如果在Python3下运行上面的代码,会报错:AttributeError: module 'sys' has no attribute 'setdefaultencoding'解决方法是:1. 如果确实需要修改Python编码,可以设置环境变量PYTHONIOENCODING=utf82. 最好的方法是删除sys.setdefaultencoding这行代码,Python3会自动使用UTF-8编码,不需要手动设置。3. 如果代码需要同时兼容Python2和Python3,可以添加版本判断:

import sys
if sys.version_info[0] < 3:
    sys.setdefaultencoding('utf-8')

这样就可以避免不同Python版本报错的问题。总之,需要注意Python3中删除了sys.setdefaultencoding,不再需要手动设置编码。删除或忽略这行代码可以解决问题。 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值