繁体   English   中英

如何删除 Pandas 中某个字符后的所有字符串或数字?

[英]How to remove all string or numbers after certain Character in Pandas?

晚上好,我一直在运动鞋区搜索亚马逊网站。

现在我得到两个范围内的价格,这意味着 1100 - 2300

如何删除 Pandas 中从 - 到结尾的所有内容以及货币符号。 这就是我尝试过的和我各自的 output

csv 文件

https://easyupload.io/ayaivg

import pandas as pd

Azs = pd.read_csv("amazsneakers.csv")

Azs['Price'].str.replace("-","")

Output:

熊猫

您可以使用Series.str.split按空格分隔,然后使用 select 第二个拆分值,删除并转换为数字:

Azs = pd.read_csv("amazsneakers.csv")

Azs['Price'] = Azs['Price'].str.split().str[1].str.replace(',','').astype(float)

或者先删除,然后通过Series.str.extract提取浮点数:

Azs['Price'] = Azs['Price'].str.replace(',','').str.extract('(\d+\.\d+)').astype(float)

print (Azs['Price'])

0      645.0
1      655.0
2      799.0
3      799.0
4      849.0
 
169    367.0
170    199.0
171    386.0
172    499.0
173    401.0
Name: Price, Length: 174, dtype: float64

请试试这个 -

test_string = "ab-cd"

split_string = test_string.split("-", 1)

#Split into "ab" and "cd"

required_string = split_string[0]

print(required_string)

Azs['Price'] = Azs['Price'].apply(lambda x: x.split(".")[0])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM