Python CSV 数据处理:替换 Proto 列值并删除列
Python CSV 数据处理:替换 Proto 列值并删除列
本代码示例演示如何使用 Python 处理 CSV 文件,将 'proto' 列中的 'tcp', 'udp', 'arp', 'ospf' 分别替换为 0, 1, 2, 3,并删除 'id', 'label' 列。
import pandas as pd
# 读取原始csv文件
df = pd.read_csv('input.csv')
# 将'proto'列的值用0、1、2、3代替
df['proto'] = df['proto'].replace(['tcp', 'udp', 'arp', 'ospf'], [0, 1, 2, 3])
# 删除'id'、'label'列
df = df.drop(['id', 'label'], axis=1)
# 保存修改后的数据到新的csv文件
df.to_csv('output.csv', index=False)
请将代码中的 'input.csv' 替换为实际的输入文件名,并将 'output.csv' 替换为希望保存结果的新文件名。
代码解释:
- 导入 Pandas 库:
import pandas as pd用于导入 Pandas 库,Pandas 是 Python 中用于数据分析的强大工具,提供高效的 DataFrame 对象,方便处理 CSV 等数据格式。 - 读取 CSV 文件:
df = pd.read_csv('input.csv')使用 Pandas 的read_csv()函数读取名为 'input.csv' 的 CSV 文件,并将数据存储到名为df的 DataFrame 对象中。 - 替换 'proto' 列值:
df['proto'] = df['proto'].replace(['tcp', 'udp', 'arp', 'ospf'], [0, 1, 2, 3])使用replace()方法将 'proto' 列中的 'tcp', 'udp', 'arp', 'ospf' 分别替换为 0, 1, 2, 3。 - 删除列:
df = df.drop(['id', 'label'], axis=1)使用drop()方法删除名为 'id' 和 'label' 的列。 - 保存结果:
df.to_csv('output.csv', index=False)使用to_csv()方法将处理后的 DataFrame 保存到名为 'output.csv' 的 CSV 文件中,index=False表示不保存索引列。
注意:
- 以上代码示例仅供参考,您可以根据实际需求进行调整。
- 请确保您的 Python 环境已安装 Pandas 库。
原文地址: https://www.cveoy.top/t/topic/i2ns 著作权归作者所有。请勿转载和采集!