Чтение CSV-файла с помощью Pandas в рабочей области Databricks

Я загрузил блокнот в рабочую область Databricks. Дерево рабочей области выглядит следующим образом:

Я хочу прочитать CSV в папке данных, используя pandas. Я пытаюсь сделать это с помощью следующего кода в блокноте FastFashionML:

import pandas as pd
items = pd.read_csv('data/fastFasionItemsDim.csv', sep='|')

Я получаю следующее:

FileNotFoundError: [Errno 2] No such file or directory: 'data/fastFasionItemsDim.csv'

Вот как выглядит папка data:

Хотя расширение не показано в дереве, файл называется fastFasionItemsDim.csv, поскольку я загрузил его в виде zip-файла. Я также пытался удалить расширение из пути к файлу, но все равно не могу прочитать файл.

Как мне найти и правильно загрузить файл CSV с пандами в файловой системе Databricks?

Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
0
81
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

предполагая, что ваш скрипт Python — FastFashionML.py, похоже, что скрипт не запускается из корня вашего рабочего пространства (который содержит папку data, а также FastFashionML.py). Можете ли вы уточнить, как вы запускаете свой скрипт?

Это блокнот, я запускаю его, просто нажимая кнопку воспроизведения на интерфейсе блоков данных.

juuso 02.07.2024 12:14

Вы пробовали закрыть и перезагрузить ноутбук? Иногда он не освежает окружающую среду вокруг себя.

Lrx 02.07.2024 13:13

вы можете добавить к своему пути префикс /, чтобы перейти в корневой каталог, например:

import pandas as pd
items = pd.read_csv('/data/fastFasionItemsDim.csv', sep='|')
Ответ принят как подходящий

Кажется, невозможно загрузить файлы CSV с помощью файловой системы Databricks.

Единственный способ — загрузить их через графический интерфейс, а затем выполнить этот код PySpark и SQL:

def load_csv_to_spark_df(path, temp_table_name):
    
    # File type
    file_type = "csv"

    # CSV options
    infer_schema = "true"
    first_row_is_header = "true"
    delimiter = "|"

    # Load CSV file into DataFrame
    spark_df = spark.read.format(file_type) \
        .option("inferSchema", infer_schema) \
        .option("header", first_row_is_header) \
        .option("sep", delimiter) \
        .load(path)

    # Display DataFrame
    display(spark_df)

    # Convert DataFrame to Pandas
    items = spark_df.toPandas()

    return spark_df, items

После загрузки таблицы в pandas, если вы также хотите, чтобы она была доступна в графическом интерфейсе, вам следует создать представление и выполнить SQL-запрос:

file_location = "/FileStore/tables/<FILENAME>"
temp_table_name = "<VIEW_NAME>"
spark_df_items, items = load_csv_to_spark_df(file_location, temp_table_name)
spark_df_items.createOrReplaceTempView(temp_table_name)

Затем SQL-запрос:

%sql
select * from `<VIEW_NAME>`

После этой процедуры у вас будет таблица фрейма данных Pandas, и вы также сможете просмотреть таблицу графически в разделе «Каталог».

Другие вопросы по теме