假设您有一个数据框,则删除唯一前缀城市名称的结果是,
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