博客
关于我
pandas DataFrame的一些操作
阅读量:794 次
发布时间:2023-02-26

本文共 1568 字,大约阅读时间需要 5 分钟。

数据预处理实战:从数据读取到处理的技巧总结

在日常工作中,数据预处理是一个经常需要处理的任务。无论是从数据清洗到特征工程,掌握了基础的数据预处理技能都能让我们的分析工作更加顺畅。以下是一些实用的数据预处理技巧,希望能为你提供帮助。

1. 数据的读取和存储

在实际项目中,数据的读取和存储是数据处理的第一步。选择合适的方式读取数据非常重要,以下是一些常用的方法:

  • 使用pandas读取CSV文件

    pd.read_csv(path, sep=',', header=None, nrows=n)

    这是一个通用的读取方式,sep参数指定了字段的分隔符,header=None 表示不读取标题行,nrows=n 表示读取指定行数。

  • 使用文件读取器读取文本文件

    with open(filename, 'r', encoding='utf-8') as fr:
    fr.readlines()

    如果文件是文本文件,尤其是包含中文字符时,建议使用UTF-8编码。

  • 写入操作

    df.to_csv(path, header=0, index=0)  # 不保留行列名的写法

    如果需要自定义编码:

    with open(filename, 'w', encoding='utf-8') as fw:
    fw.writelines(str + '\n')
  • 字符串与列表的转换

    test_str = " ".join(test_list)
    test_list = list(test_str)

    这两个转换可以帮助你在处理文本数据时更灵活地进行操作。

2. DataFrame常用的数据处理

在pandas中,DataFrame是数据处理的核心工具。以下是一些常用的操作方法:

  • 查看数据

    df.head()

    查看前几行数据,快速了解数据分布。

  • 元素查询

    df.ix[:, :]  # 根据索引选取

    这一方法允许你根据行和列的索引分别选择数据。

  • 条件筛选

    df.loc[:, df['column'] <= k]  # 根据条件筛选
    df.iloc[] # 根据索引位置筛选

    loc方法基于列名进行筛选,而iloc方法基于实际存储的位置。

  • 空值处理

    df.isnull().sum()  # 查询空值总数
    df[df[col].notnull() & df[col] != ''] # 选取非空值

    如果需要填充空值,可以使用:

    df.fillna({'col': value})  # 填充空值

    删除空值:

    df.dropna(axis=0, how='any')  # 删除含有空值的行或列

    替换空值:

    df.replace(to_replace, value)  # 用value代替to_replace
  • 数据信息查询

    df.shape()  # 查看行列数量
    df.tolist() # 将DataFrame转换为列表

    如果需要将数据转换为字典:

    pd.DataFrame.from_dict(dict, orient='index', columns=[col])

    将DataFrame转字典:

    dict = df.set_index(col1).T.to_dict(col2)

3. 字符串合并

在数据处理过程中,字符串合并是一个常见需求。以下是一些实用的技巧:

  • 简单合并

    str = str1 + " " + str2

    通过简单的字符串拼接实现文本处理需求。

  • 高效合并

    test_str = " ".join(test_list)

    如果需要对多个字符串进行高效合并,可以使用join方法。

通过这些实用技巧,你可以更高效地完成数据预处理任务。如果对某些操作不熟悉,可以通过查阅官方文档或实践项目来进一步巩固理解。

转载地址:http://wivfk.baihongyu.com/

你可能感兴趣的文章
Pandas - 有条件的删除重复项
查看>>
pandas -按连续日期时间段分组
查看>>
pandas -更改重新采样的时间序列的开始和结束日期
查看>>
SpringBoot+Vue+Redis前后端分离家具商城平台系统(源码+论文初稿直接运行《精品毕设》)15主要设计:用户登录、注册、商城分类、商品浏览、查看、购物车、订单、支付、以及后台的管理
查看>>
pandas :to_excel() float_format
查看>>
pandas :从数据透视表中的另一列中减去一列
查看>>
pandas :加入有条件的数据框
查看>>
pandas :将多列汇总为一列,没有最后一列
查看>>
pandas :将时间戳转换为 datetime.date
查看>>
pandas :将行取消堆叠到新列中
查看>>
pandas :设置编号.最大行数
查看>>
pandas DataFrame 中的自定义浮点格式
查看>>
Pandas DataFrame 的 describe()方法详解-ChatGPT4o作答
查看>>
Pandas DataFrame中删除列级的方法链接解决方案
查看>>
Pandas DataFrame中的列从浮点数输出到货币(负值)
查看>>
Pandas DataFrame中的列从浮点数输出到货币(负值)
查看>>
Pandas DataFrame多索引透视表-删除空头和轴行
查看>>
pandas DataFrame的一些操作
查看>>
Pandas Dataframe的日志文件
查看>>
Pandas df.iterrows() 并行化
查看>>