Загрузите CSV в Pandas DataFrame из Pydrill Query - PullRequest
0 голосов
/ 11 октября 2019

Я могу загрузить csv в pandas dataframe, но он застрял в списке. Как я могу загрузить непосредственно в Pandas DataFrame из Pydrill или удалить список столбцов Pandas DataFrame и данных? Я попытался удалить из списка, и он помещает все в список списка.

Я использовал to_dataframe (), но не могу найти документацию о том, могу ли я использовать разделитель. pd.dataframe не работает из-за запроса Pydrill.

reviews = drill.query("SELECT * FROM  hdfs.datasets.`titanic_ML/titanic.csv` LIMIT 1000", timeout=30)
print(reviews)
import pandas as pd
df2 = reviews.to_dataframe()
df2.rename(columns=df2.iloc[0])
headers = df2.iloc[0]
print(headers)

new_df = pd.DataFrame(df2.values[1:], columns=headers)
new_df.head()

Результаты приводят все в список.

["pclass","sex","age","sibsp","parch","fare","embarked","survived"]

0   ["3","1","38.0","0","0","7.8958","1","0"]
1   ["1","1","42.0","0","0","26.55","1","0"]
2   ["3","0","9.0","4","2","31.275","1","0"]
3   ["3","1","27.0","0","0","7.25","1","0"]
4   ["1","1","41.0","0","0","26.55","1","0"]

Я бы хотел поместить все в обычный кадр данных панд.

1 Ответ

0 голосов
/ 11 октября 2019

Решение, которое я нашел, было следующее:

оно не выводит список данных, но является альтернативным решением проблемы.

connect_str = "dbname = 'dbname' user = 'dsa_ro_user 'conn = psycopg2.connect (connect_str) host =' база данных хоста '

SQL = "SELECT *" SQL + = "FROM train"

df = pd.read_sql (SQL, conn) df.head ()

...