基于Python的csv文件操作(一)计算csv相邻两列之间数值的差并在插入一列显示
作者:互联网
基于Python的csv文件操作(一)计算csv相邻两列之间数值的差并在插入一列显示
好久没发文章了,最近对python脚本比较感兴趣,在学习这方面的操作,很多操作步骤资料在网上都能找到,但是某些操作确实让人头大,就比如这个计算csv文件中相邻两列之间的数据差值,废话少说,下面只是单纯记录一下自己的操作方法,如有不足或者大家有更好的方法都可以在评论区留言,相互学习!
比如在一份csv文件中有这样的数据:
想要计算test.csv文件中A列-B列的差值,并将结果打印在新增的C列中,在Excel的操作中这到非常简单,但是。。。。。。好吧其实用python写也是挺简单的。只需要pandas和numpy里面的一些函数就行了,代码如下:
# encoding='utf-8'
import pandas as pd
import numpy as np
start_time = time.time()
def main(table_date=None, lines=None):
#将csv文件中两列数据相加再新增一列写入csv中
filter_data = pd.read_csv(r'./test.csv')
raw_data = pd.read_csv(r'./test.csv') #这里读两遍只是为了保存一下原csv文件数据,方便后面写入
A_value = filter_data['A']
B_value = filter_data['B']
A_value = list(map(float, A_value ))
B_value = list(map(float, B_value ))
Sub_value = np.array(B_value )-np.array(A_value )
raw_data['A-B'] = Sub_value
raw_data.to_csv(r"./test.csv", mode='w', index=False, encoding='utf-8-sig')
if __name__ == '__main__':
main()
print('程序运行了%.2f秒' % (time.time() - start_time))
运行完的结果如下:
以上就是关于Python操作csv文件计算两列的差异并插入新的一列显示(这个网上也有很多例程),有关read_csv()、map()、list()、array()等函数大家可自行搜索相关资料,上述理解不到位或者还没见识到更高级的处理等不足之处希望大家多多指出,非常感谢。
标签:文件,Python,value,time,两列,csv,data 来源: https://blog.csdn.net/weixin_41135473/article/details/102736048