Как мне прочитать SQL-запрос о загрузке на пандах? - PullRequest
0 голосов
/ 03 декабря 2018

Мне нужно изучить загруженный набор данных, у меня нет учетных данных sql, я использую jupyter lab, и файл sql находится в одной папке с блокнотом jupyter.

import pandas as pd
pd.read_sql_table('DATA_SPPT.sql')

Ошибкасообщение

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-3-4a4c42554a20> in <module>()
----> 1 pd.read_sql_table('DATA_SPPT_OP_BERSAMA.sql')

TypeError: read_sql_table() missing 1 required positional argument: 'con'

Это загрузка в формате sql, так что, думаю, мне не нужно описывать соединение, так что мне делать?

1 Ответ

0 голосов
/ 03 декабря 2018

Я думаю, вы неправильно поняли read_sql методы pandas.pandas не имеет специального метода для чтения .sql файлов, хотя он предоставляет методы для соединений с серверами типа SQL, поддерживаемыми SQLAlchemy.

Если вы хотите вернуть содержимое файла .sql,Вы можете прочитать этот файл, используя менеджер контекста Python, где он возвращает список каждой строки и отфильтровывая пустые строки с пониманием списка:

with open('DATA_SPPT.sql','r') as f:
    lines = [line.strip() for line in f if line.strip()]

И если по какой-либо причине вам действительно нужно вернуть кадр данных изit:

df = pd.DataFrame(lines)

Если вы хотите передать файл .sql непосредственно из pandas, , но вам необходимо объявить вашу строку con в базе данных:

with open('DATA_SPPT.sql','r') as f:
    df = pd.read_sql_query(f, con)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...