【无标题】

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提供了大量能使我们快速便捷地处理数据的函数和方法。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值