python语言实现txt文本转换为csv
提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
例如:第一章 Python 机器学习入门之pandas的使用
提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
提示:这里可以添加本文要记录的大概内容:
运用到了pandas和numpy两个库,DataFrame初始化。
提示:以下是本篇文章正文内容,下面案例可供参考
一、pandas是什么?
示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。
二、使用步骤
1.引入库
代码如下(示例):
定义列名,给出txt文档的位置
import pandas as pd
import numpy as np
filename="C:\\Users\\Melody_z\\Desktop\\20220415.txt"
column=['RelayAppID(如有)','AppID(如有)','AuthCode(技术部发放)','接入软件名称','版本号','软件厂商名称','资产账号','备注']
list1=[]
2.读入数据
代码如下(示例):
f = open(filename,'r',encoding='utf-8') # 打开txt文本进行读取
for line in f.readlines(): # 循环,读取文本里面的所有内容
if '+' not in line:
line = line.strip('\r').strip('\t').strip('').strip('\n').replace("————接入软件基本情况————",'').replace(":,",":").replace(",,",",").replace(" ","")
list1.append(line)
f.close()
该处读完数据后对数据进行了简单的处理。
3.定义数据类型并初始化
代码如下(示例):
n=list1.count('AuthCode(技术部发放):')
data=['NaN']*(n*8)
ll =np.array(data).reshape(n,8)
df = pd.DataFrame(ll,columns=column, dtype=object)
用np初始化dataframe
初始化了一个n*8的数组,并初始化为NaN,转换为DataFrame格式。
4.定义数据类型并初始化
代码如下(示例):
cun=0
for i in range(len(list1)):
if 'AppID' in list1[i]:
if 'RelayAppID' in list1[i]:
df.iloc[cun,0] = list1[i+1]
else:
cun = cun + 1
df.iloc[cun-1, 1] = list1[i + 1]
df.iloc[cun-1, 7] = list1[i][10:]
elif 'Auth' in list1[i]:
df.iloc[cun-1, 2]=list1[i+1]
elif '接入软件名称' in list1[i]:
df.iloc[cun - 1, 3]=list1[i+1]
elif '版本号' in list1[i]:
df.iloc[cun - 1, 4]=list1[i+1]
elif '软件厂商名称:' in list1[i]:
df.iloc[cun - 1, 5]=list1[i+1]
elif '资产账号' in list1[i]:
df.iloc[cun - 1, 6]=list1[i+1]
else:
continue
for i in range(len(n)):
if len(df.iloc[i, 7])==0:
df.iloc[i, 7]='(已存在)首次,仿真,中继多对多'
将处理后的txt数据写入到datFRAM
5.数据写入csv
代码如下(示例):
df.to_csv('text.csv',encoding='utf-8')
总结
提示:这里对文章进行总结:
以上就是今天要讲的内容重点关注第三部分,pandas提供了大量能使我们快速便捷地处理数据的函数和方法。