【发布时间】:2020-05-13 18:25:42
【问题描述】:
我正在使用 pandas 数据框,其中列中包含非标准值。 有没有一种方法可以提取或替换列中的字符和数字。 我对应用正则表达式模式来清理数据非常陌生。
第一列是 Precise_Age,第二列是浏览器。
在浏览器列中,我只想要名称和版本。(如果版本是 10.1.2,那么我只想要 10)- Android 10、Android 4、iOS 11 等。
Browser desired_output
75.0.3770.143 | Chrome Dev | Android | 9 Android 9
78.0.3904.108 | Chrome Dev | Android | 9 Android 9
79.0.3945.93 | Chrome Dev | Android | 9 Android 9
79.0.3945.93 | Chrome Dev | Android | 8.0.0 Android 8
| | Android | 8.1.0 Android 8
79.0.3945.116 | Chrome Dev | Android | 10 Android 10
79.0.3945.93 | Chrome Dev | Android | 5.1 Android 5
| | Android | 10 Android 10
| Facebook | Android | 8.1.0 Android 8
79.0.3945.116 | Chrome Dev | Android | 4.4.4 Android 4
| | Android | 8.1.0 Android 8
79.0.3945.79 | Chrome Dev | Windows | 8 Windows 8
77.0.3865.116 | Chrome Dev | Android | 9 Android 9
88.1.284108841| Google Search | iOS | 13.3 iOS 13
在 Age col 中,我只想要标准值,替换空格、逗号等。 如果年龄的值超过 100 个,则将其全部设为缺失值。
Age desired_output
67 67
66 66
67.5 67
60대후반 60
1949ë…„ null
63세 63
83ë…„ìƒ 83
11세 11
7217861839 null
59 years 59
60세 60
73.87083774 73
54ë…„ìƒ 54
55세 55
327 null
37ë…„ìƒ 37
642 null
523 null
0.61 0
53세 53
42ë…„ìƒ 42
757575 null
91.98192554 91
1.11991 1
83세(만82세) 83
4324234 null
8827 null
11 Years 11
【问题讨论】:
-
请检查图片链接以获取浏览器所需的输出和蓝色的年龄
-
你试过什么?什么没用?你得到了什么?你期待什么?什么不适用于您的代码,它在哪里?
-
请不要在您的问题中包含图片,而是Minimal, Reproducible Example。
-
@Toto 我不知道如何清理浏览器 col 和 age,因为这些 col 存在许多非标准值。我想要所需的输出,正如我提到的与这些 cols 相对应的那样。帮我看看如何编写代码以实现所需的输出
-
@LeoE 感谢您的建议.. 下次提问时我会小心的
标签: python regex python-3.x pandas dataframe