使用pysp筛选数组中基于RDD的值

2024-09-26 18:07:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用pypark(python3)创建和过滤基于RDD的数组元素。你知道吗

INCLUDE_CITIES = {'Philadephia','Buffalo','Syracuse'}
...
...
...
rddFiltered = sc.textFile(fileLocation).filter(lambda line: line in INCLUDE_STATIONS)

print (rddFiltered.take(10)) 

只有当我从数组中找到城市时,我才希望内容在RDD中。上面的语法不正确,但我需要一些帮助。我想坚持RDD的现在,而不是使用数据集或DF。 感谢您的帮助。提前谢谢。你知道吗


Tags: 元素includeline数组python3scrddcities
1条回答
网友
1楼 · 发布于 2024-09-26 18:07:07

这是因为您的文本文件有问题可能您没有将文本文件放入HDFS(使用命令HDFS dfs-put)城市.txt将文本文件放入HDFS主目录)

这个例子对我很有用

1)创建文本文件

你知道吗城市.txt你知道吗

Varun,23,Buffalo
Trump,29,Syracuse
Obama,91,Phili

2)将文本文件放在hdfs中

hdfs dfs -put cities.txt

2)运行代码

cities = {'Philadephia','Buffalo','Syracuse'}
cities_from_file = sc.textFile("cities.txt").map(lambda line: line.split(",")[2]).filter(lambda city: city in cities)
cities_from_file.take(5)

[u'Buffalo', u'Syracuse']                                                       

相关问题 更多 >

    热门问题