python - 无法读取基于正则表达式的文件 spark
问题描述
我正在尝试在 pyspark 中加载包含 2015 年到 2020 年数据的文件。我使用正则表达式。
所有的正则表达式都在一个在线网站上进行了检查。但是,当我在 pyspark 中使用它们时,它会显示错误。看起来hdfs不喜欢括号。我尝试了不同的变体
# .load("hdfs:///data/ghcnd/daily/20(1[5-9]|20).csv.gz")
# .load("hdfs:///data/ghcnd/daily/20(15|16|17|18|19|20).csv.gz")
如何正确编写它们以便我可以从 2015 年到 2020 年的文件中加载数据?
解决方案
尝试使用花括号{}
并保留所有值。
.load("hdfs:///data/ghcnd/daily/2020{15,16,17}.csv.gz")
Example:
读取2015,2016
文件
spark.read.csv("/tmp/20{15,16}.csv").show()
#+----+
#| _c0|
#+----+
#|2015|
#|2016|
#+----+
$cat 2015.csv
2015
$cat 2016.csv
2016
推荐阅读
- html - 在单独的行中显示两个 td
- mongodb - Golang 中的聚合 Mongodb
- java - 如何动态更改 JComboBox 中的项目数
- xamarin.ios - [iOS][Xamarin.UITests]:Xamarin.UITests 无法通过 Wifi 检测到真正的 iPhone
- html - Bootstrap Alert 无法在我的 localhost 网页上运行
- html - 如何使边距变白
- kubernetes - Kubernetes 使用命令式命令更新机密
- c++ - 在 c++ 中的 std::cout<
C++
1.
#include<iostream> #include<cstring> int main() { ch
- go - 使用 Go lambda 的 AWS 发电机流处理
- asp.net - 为什么我的会员信息没有从剃须刀页面传输到控制器