2017-04-14 113 views
1

在几种情况下,如果句法(例如,拼写 - PURPLE或PURPAL)错误,我如何使用Python从csv文件(50000行,下面的示例)分组颜色(蓝色,绿色,紫色,红色)?感谢您提供的任何帮助当语法(iePURPLE或PURPAL)错误时,如何从csv文件分组颜色(蓝色,绿色,紫色,红色)?

Blue  5642 
Purpal 5640 
red  5610 
BLUE  5583 
Red  5541 
green  5523 
Purple 5503 
Green  5491 
RED  5467 
...... 
+0

分组必须清理您的数据,即摆脱PURPAL或任何其他类似损坏之前。 – Afaq

回答

3

您将需要清理数据。显然,这对于数据所处的任何情况都是唯一的,但是如果您尝试识别拼写错误的颜色名称,那么可以过滤DataFrame以显示不是蓝色,绿色,紫色或红色的所有内容。

你可以做下面的事情来识别不适应,然后找出如何解决它们。

df.Color = df.Color.str.lower() 
colors = ['blue', 'red', 'purple', 'green'] 
misspellings = df.Color[~df.Color.isin(colors)].values 
print(misspellings) 
['purpal'] 

从那里你可以单独修复每个条目或写点东西来智能修复它们。这取决于你,但一旦你完成了,你可以像平常一样进行分组。要解决的“purpal”的一个或多个条目,你可以这样做:

df.loc[df.Color == 'purpal', 'Color'] = 'purple' 
+0

很好的答案!加一。 Hi @Grr – piRSquared

+0

谢谢@Grr,非常感谢:) – Roebster