【问题标题】:Python data frame, for loop and type castsPython 数据框,for 循环和类型转换
【发布时间】:2020-12-08 09:56:20
【问题描述】:

我有一个包含几列的数据框。我的目标是以某种方式操纵最后一列。到目前为止,最后一列的类型为字符串。我需要通过构建一个遍历最后一列并删除最后两个字符然后将其类型转换为浮点数的 for 循环来获得帮助。

最后一列中的条目的示例是“1234.5678;;”。我希望它看起来像 1234.5678 以及最后一列的每个条目。

提前致谢。

【问题讨论】:

    标签: python dataframe for-loop casting


    【解决方案1】:

    我不确定您到底在问什么,您是在问如何操作字符串以删除最后两个字符?或者您是在询问如何访问(和编辑/更改)数据框?如果是这样,您是否使用熊猫?

    澄清这可能有助于其他人更有效地帮助您解决问题。

    在python中,给定任何字符串,你可以像这样切断最后两个字符:

    string=string[:-2]
    

    我假设变量字符串包含你想要的字符串。

    对于未来,如果您能更详细地解释您的问题,解释您想要做什么以及您需要帮助的地方,并在整体上为您的问题付出更多努力,将不胜感激从光学角度看,这个标题并不好看。

    【讨论】:

      【解决方案2】:

      当您使用 pandas DataFrame 时,您可以这样做:

      w.iloc[:][w.columns.size-1]=w.iloc[:][w.columns.size-1].str.replace(";;","")
      

      w 是你的数据框。此行将替换列中的所有;。我假设最后两个字符总是遵循相同的模式。如果最后两个字符遵循未知模式,这显然不起作用。

      【讨论】:

      • 非常感谢!我能够实现for循环。我还有一个小问题。最后一列的标题有两个“;;”以及我想删除的最后。我怎样才能做到这一点,以便名称将是永久的,而不仅仅是一个副本?
      • 看看pandas.DataFrame.rename。有示例如何重命名列。你用for-loop做什么?
      • 我正在使用循环遍历数据框的列来删除两个“;;”在每个条目之后。
      猜你喜欢
      • 2022-07-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-15
      相关资源
      最近更新 更多