• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

一次函数应用于 pandas 数据框的多个列

用户头像
it1352
帮助1

问题说明

我经常处理格式不正确的数据(即数字字段不一致等)

I frequently deal with data which is poorly formatted (I.e. number fields are not consistent etc)

可能还有其他方式,我不知道,但是格式化数据框中单个列的方式是使用一个函数并将该列映射到该函数.

There may be other ways, which I am not aware of but the way I format a single column in a dataframe is by using a function and mapping the column to that function.

format = df.column_name.map(format_number)

问题:1-如果我有一个包含50列的数据框,并且想将该格式应用于多个列,例如第1、3、5、7、9列,该怎么办?

Question: 1 - what if I have a dataframe with 50 columns, and want to apply that formatting to multiple columns, etc column 1, 3, 5, 7, 9,

你能去吗

format = df.1,3,5,9.map(format_number)

..这样我可以将所有数字列设置为一行吗?

.. This way I could format all my number columns in one line?

正确答案

#1

您可以执行df[['Col1', 'Col2', 'Col3']].applymap(format_number).注意,尽管这将返回新的列;它不会修改现有的DataFrame.如果要将值恢复为原始值,则必须执行df[['Col1', 'Col2', 'Col3']] = df[['Col1', 'Col2', 'Col3']].applymap(format_number).

You can do df[['Col1', 'Col2', 'Col3']].applymap(format_number). Note, though that this will return new columns; it won't modify the existing DataFrame. If you want to put the values back in the original, you'll have to do df[['Col1', 'Col2', 'Col3']] = df[['Col1', 'Col2', 'Col3']].applymap(format_number).

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /reply/detail/tanhcffjek
系列文章
更多 icon
同类精品
更多 icon
继续加载