python - Azure Databricks - 将 Parquet 文件读取到 DataFrame 中

标签 python dataframe parquet azure-databricks

我是 Python 新手...尝试从 Databricks 读取 Parquet 文件,但当文件为空时会抛出错误。在将文件读入 DataFrame 之前如何检查文件大小。代码如下:

%python

##check if file is empty ???
##if not empty read
##else do something else

try:
   parquetDF =              
   spark.read.parquet("wasbs://XXXXX@XXXX.blob.core.windows.net/XXXX/2019-10- 11/account.parquet")
except:
   print('File is Empty !!!')

最佳答案

现在我正在按如下方式处理此问题

%python
import pandas as pd
data = {
    'Dummy': ['Dummy'], 
}
parquetDF = pd.DataFrame(data)
try:
  parquetDF = spark.read.parquet("wasbs://XXXXX@XXXXX.blob.core.windows.net/XXXXX/2019-10-11/account.parquet")
except:
  print('Empty File!!!')
if (parquetDF.columns[0] == 'Dummy'):
  print('Do Nothing !!!!')
else:
  print('Do Something !!!')

创建虚拟数据帧,然后尝试使用 Parquet 数据加载数据帧。如果有任何异常/源文件为空 DF 将不会被加载。然后检查DF是否加载并进行相应处理。

还尝试读取文件大小,但出现异常“没有这样的文件或目录”

%python
import os
statinfo = os.stat("wasbs://XXXXX@XXXXX.blob.core.windows.net/XXXXX/2019-10-11/account.parquet")
statinfo

关于python - Azure Databricks - 将 Parquet 文件读取到 DataFrame 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58403773/

相关文章:

apache-spark - 写入外部 Hive 表时进行 Spark 压缩

pandas - 具有字典列表的列的pyarrow数据类型?

python - 在 Python 中以 8 个字符 block 的形式迭代字符串

python - 将输出翻译成日语

python - 添加具有另一列和 cumsum 的字符串长度的列?

python - Pandas - 检查列中的值是否匹配两种格式之一

csv - Spark SQL - 加载带有一些格式错误记录的 csv/psv 文件

python - 找不到 Pyspark 模块

python - 数据框 vlookup 查找另一个数据框中的日期

python - 如何去除单列中的小数?