假设您有一个数据框,则删除唯一前缀城市名称的结果是,
Id City 2 3 Kolkata 3 4 Hyderabad 6 7 Haryana 8 9 Kakinada 9 10 Kochin
为了解决这个问题,我们将遵循以下步骤-
定义一个数据框
创建一个空列表以将所有城市列值附加到第一个字符之后,
l = [] for x in df['City']: l.append(x[0])
创建另一个空列表以过滤重复的字符。
设置for循环,如果有条件,则追加唯一的char。它的定义如下
l1 = [] for j in l: if(l.count(j)>1): if(j not in l1): l1.append(j)
创建另一个空列表。设置for循环以访问城市列值,并检查l1中是否存在第一个char元素,然后将其附加到另一个列表。
l2 = [] for x in df['City']: if(x[0] in l1): l2.append(x)
最后,验证l2元素是否存在于city列中,并使用来打印数据框isin()。
df[df['City'].isin(l2)]
让我们检查以下代码以获得更好的理解-
import pandas as pd df = pd.DataFrame({'Id':[1,2,3,4,5,6,7,8,9,10], 'City':['Chennai','Delhi','Kolkata','Hyderabad','Pune','Mumbai','Haryana','B engaluru','Kakinada','Kochin'] }) l = [] for x in df['City']: l.append(x[0]) l1 = [] for j in l: if(l.count(j)>1): if(j not in l1): l1.append(j) l2 = [] for x in df['City']: if(x[0] in l1): l2.append(x) print(df[df['City'].isin(l2)])
Id City 2 3 Kolkata 3 4 Hyderabad 6 7 Haryana 8 9 Kakinada 9 10 Kochin