如何使用 pandas 快速提取表中的数字? | 您所在的位置:网站首页 › dataframe的列名可以重名不 › 如何使用 pandas 快速提取表中的数字? |
使用 pandas 提取表中的数字有多种方法,但其中一种常见的方法是使用 str.extract 方法,它可以根据正则表达式匹配和捕获数字。例如,如果你有一个名为 df 的数据框,其中一列名为 A,包含了字符串和数字混合的数据,你可以使用以下代码提取数字: # 导入 pandas 库 import pandas as pd # 创建一个正则表达式,匹配任意个或零个非数字字符(\D*), # 然后匹配并捕获一个或多个数字字符(\d+), # 然后再匹配任意个或零个非数字字符(\D*) pattern = r"\D*(\d+)\D*" # 使用 str.extract 方法,在列 A 中应用正则表达式,并将结果赋值给新列 B df["B"] = df["A"].str.extract(pattern) # 打印结果 print(df)输出可能如下: A B 0 1a 1 1 NaN NaN 2 10a 10 3 100b 100 4 0b 0如果你想提取多个数字,你可以在正则表达式中增加更多的捕获组,并指定列名作为参数。例如: # 导入 pandas 库 import pandas as pd # 创建一个正则表达式,匹配并捕获尖括号内的四个以逗号分隔的数字, # 并忽略其他字符。 pattern = r"" # 使用 str.extract 方法,在列 rect 中应用正则表达式,并将结果赋值给新的四列 x, y, w 和 h。 df[["x", "y", "w", "h"]] = df["rect"].str.extract(pattern) # 打印结果 print(df)输出可能如下: rect x y w h 0 120 168 260 120 1 120 168 260 120 2 ... ... ... ... |
CopyRight 2018-2019 实验室设备网 版权所有 |