gpt4 book ai didi

python - 将 CSV 从 Azure Data Lake Storage Gen 2 读取到 Pandas Dataframe |无数据库

转载 作者:行者123 更新时间:2023-12-02 06:55:27 31 4
gpt4 key购买 nike

在过去的 3 个小时里,我尝试将 CSV 从 Azure Data Lake Storage Gen2 (ADLS Gen2) 读取到 pandas 数据帧中。这在 Azure Blob Storage (ABS) 中非常简单,但我不知道如何在 ADLS Gen2 中执行此操作。

到目前为止我已经开发了以下功能:

def read_csv_from_adls_to_df(storage_account_name, storage_account_key, container_name, directory_name, file_name):
service_client = DataLakeServiceClient(account_url=f"https://{storage_account_name}.dfs.core.windows.net", credential=storage_account_key)
file_system_client = service_client.get_file_system_client(file_system = container_name)
directory_client = file_system_client.get_directory_client(directory_name)
file_client = directory_client.create_file(file_name)
file_download = file_client.download_file()

return None

我不知道在 file_download 步骤之后我应该做什么。我尝试过几种方法,例如 readall()、readinto() 但似乎没有任何效果。

以下是我经常用于将 CSV 从 ABS 读取到数据帧中的函数:

def read_csv_from_blob(blob_service_client, container_name, blob_name):
blob_client = blob_service_client.get_blob_client(container=container_name, blob=blob_name)

# Retrieve extract blob file
blob_download = blob_client.download_blob()

# Read blob file into DataFrame
blob_data = io.StringIO(blob_download.content_as_text())
df = pd.read_csv(blob_data)
return df

PS:我不是在 databricks 上这样做。我正在 Python 上执行此操作。

最佳答案

我希望这个文档能有所帮助 https://learn.microsoft.com/en-us/azure/architecture/data-science-process/explore-data-blob

使用 lambda 从 s3 读取文件很简单,但 Azure 使这个简单的任务变得复杂。此外,您还可以使用 Azure 数据工厂。

关于python - 将 CSV 从 Azure Data Lake Storage Gen 2 读取到 Pandas Dataframe |无数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72358668/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com