当前位置: 首页 > article >正文

机器学习·文本数据读写处理

前言

        在自然语言处理的第一步,需要面对的是各种各样以不同形式表现的文本数据,比如,txt 、Excel 中的表格数据,还有无法直接打开的 pkl 文件等。针对这些不同类型的数据,可以基于 Python 中的基本功能函数或者调用某些库进行读写以及作一些基本的处理


一、文本数据读写方法

1. 读写 TXT 文件
  • 读取方法

    • read():读取整个文件,返回字符串。

    • readline():逐行读取,返回字符串。

    • readlines():读取所有行,返回列表。

  • 写入方法

    • write():写入字符串。

    • writelines():写入字符串列表。

  • 文件打开模式

    模式描述
    r只读(默认)
    w写入(覆盖)
    a追加写入
    r+读写(覆盖)
    w+读写(覆盖)
    a+读写(追加)
    rb/wb二进制读写
  • 示例代码

    # 读取
    with open("file.txt", "r", encoding="utf-8") as f:
        lines = f.readlines()  # 读取所有行
        for line in lines:
            print(line.strip())  # 去除换行符
    
    # 写入
    with open("file.txt", "w", encoding="utf-8") as f:
        f.write("Hello, World!\n")
        f.writelines(["Line 1\n", "Line 2\n"])

2. 读写 CSV 文件
  • Pandas 方法

    • read_csv():读取 CSV 文件。

    • to_csv():写入 CSV 文件。

  • 常用参数

    • index_col:指定索引列。

    • encoding:编码格式(如 utf-8)。

    • header:是否保留表头。

  • 示例代码

    import pandas as pd
    
    # 读取
    df = pd.read_csv("data.csv", index_col=0, encoding="utf-8")
    
    # 写入
    df.to_csv("output.csv", index=False, encoding="utf-8")

3. 读写 Excel 文件
  • Pandas 方法

    • read_excel():读取 Excel 文件。

    • to_excel():写入 Excel 文件。

  • 依赖库

    • openpyxl:处理 .xlsx 文件。

    • xlrd:处理 .xls 文件。

  • 示例代码

    # 读取
    df = pd.read_excel("data.xlsx", sheet_name="Sheet1")
    
    # 写入
    df.to_excel("output.xlsx", sheet_name="Sheet1", index=False)
     

二、DataFrame 常用操作

1. 数据选择
  • 选择列

    df["列名"]  # 单列
    df[["列名1", "列名2"]]  # 多列
  • 选择行

    df.loc[行标签]  # 按标签选择
    df.iloc[行索引]  # 按索引选择

  • 条件筛选

    df[df["列名"] > 值]  # 单条件
    df[(df["列名1"] > 值) & (df["列名2"] == 值)]  # 多条件
2. 数据操作
  • 添加列

    df["新列名"] = 值
  • 删除列

    df.drop("列名", axis=1, inplace=True)
  • 排序

    df.sort_values(by="列名", ascending=False)
  • 统计

    df.describe()  # 描述性统计
    df["列名"].value_counts()  # 值计数
3. 数据可视化
  • 绘图

    df["列名"].plot(kind="bar")  # 柱状图
    df.plot.scatter(x="列名1", y="列名2")  # 散点图
     

三、大数据处理技巧

1. 压缩文件
  • 方法:使用压缩格式(如 .zip.gz)存储文件。

  • 示例

    df.to_csv("data.csv.zip", compression="zip")
2. 数据类型优化
  • 方法:将高精度数据类型(如 float64)转换为低精度类型(如 float32)。

  • 示例

    df = pd.read_csv("data.csv", dtype={"列名": "float32"})
3. 分块处理
  • 方法:使用 chunksize 参数分块读取大数据文件。

  • 示例

    for chunk in pd.read_csv("large_data.csv", chunksize=1000):
        process(chunk)  # 处理每个数据块
     

四、总结

操作方法/工具适用场景
TXT 文件读写open()read()write()简单文本数据
CSV 文件读写pandas.read_csv()to_csv()结构化表格数据
Excel 文件读写pandas.read_excel()to_excel()复杂表格数据
DataFrame 操作loc[]iloc[]plot()数据筛选、统计、可视化
大数据处理压缩、数据类型优化、分块处理大规模数据集


欢迎交流探讨^v^


http://www.kler.cn/a/553233.html

相关文章:

  • 初步安装和使用vant组件库,使用css变量定制vant主题样式 ,小程序的API Promise化,调用promise化之API
  • Chrome Edge 开启多线程下载
  • Windows 环境下配置多个不同版本的 Maven
  • 使用GDI+、文件和目录和打印API,批量将图片按文件名分组打包成PDF
  • SV刷题小记2
  • DeepSeek和ChatGPT在科研课题设计和SCI论文写作中的应用
  • PyTorch 基础知识
  • Java项目面试遇见试题总结
  • java常见面试场景题
  • Goutte库的使用方法详解
  • Python爬虫实战案例(1)—— 爬取百度图片 及 其它网站的网页图片
  • Design ware
  • 【ISO 14229-1:2023 UDS诊断(ECU复位0x11服务)测试用例CAPL代码全解析⑪】
  • TT无人机零散笔记
  • Educational Codeforces Round 174 (Rated for Div. 2)(ABCD)
  • AcWing 1264. 动态求连续区间和 ,详细讲解线段树与树状数组(Python,篇二)
  • python-leetcode 37.翻转二叉树
  • 【c语言初阶】函数的嵌套
  • 143.WEB渗透测试-信息收集-小程序、app(14)
  • 【AIGC工具箱】AIGC重塑生活神器