编写Python代码以过滤给定数据框中的回文名称
打印回文名称的结果是-
Palindrome names are: Id Name 0 1 bob 2 3 hannah
为了解决这个问题,我们将遵循以下方法-
解决方案1
定义一个数据框
在setfor循环内创建列表推导,以使用i变量访问df['Name']列中的所有值,并设置条件以比较i==i[::-1],然后将i值添加到列表中
l = [ i for i in df['Name'] if(i==i[::-1])]
最后,使用以下命令检查df['Name']列中存在的列表值isin()
df[df['Name'].isin(l)]
例子
让我们检查以下代码以获得更好的理解-
import pandas as pd
data = {'Id':[1,2,3,4,5],'Name':['bob','peter','hannah','james','david']}
df = pd.DataFrame(data)
print("DataFrame is:\n", df)
l = [ i for i in df['Name'] if(i==i[::-1])]
print("Palindrome names are:\n", df[df['Name'].isin(l)])解决方案2
定义一个数据框
应用lambda过滤器功能将df['Name']与具有反向功能的每个值进行比较,以得出是否相同的结果。如果值匹配,则将其存储为结果列表。
result = list(filter(lambda x:(x=="".join(reversed(x))),df['Name']
最后,使用以下命令检查df['Name']列中存在的列表值isin()
df[df['Name'].isin(result)]
例子
让我们检查以下代码以获得更好的理解-
import pandas as pd
data = {'Id':[1,2,3,4,5],'Name':['bob','peter','hannah','james','david']}
df = pd.DataFrame(data)
print("DataFrame is:\n", df)
result = list(filter(lambda x:(x=="".join(reversed(x))),df['Name']))
print("Palindrome names are:\n", df[df['Name'].isin(result)])输出
DataFrame is: Id Name 0 1 bob 1 2 peter 2 3 hannah 3 4 james 4 5 david Palindrome names are: Id Name 0 1 bob 2 3 hannah
热门推荐
10 男友考研上岸祝福语简短
11 朋友出国祝福语简短英文
12 除夕简短祝福语给老师
13 大班毕业祝福语简短霸气
14 长辈乔迁送花祝福语简短
15 女儿提亲的祝福语简短
16 M退休祝福语生日简短
17 物业入伙大吉祝福语简短
18 新年拜年祝福语简短版