Использование revoscalepy для вставки данных в базу данных
Ахой там,
есть ли возможность использования revoscalepy
пакет для вставки значений в таблицу?
Я бы ожидал что-то вроде:
import pandas as pd
from revoscalepy import rx_write_to_db, RxOdbcData
a_df = pd.DataFrame([[0, 1], [2, 3]], columns=[...])
rx_write_to_db(RxOdbcData(connection_string=con_str, ...), data=a_df)
Но я не мог найти ничего подобного. Наиболее близким вариантом является rx_write_object, который выгружает фрейм данных в виде двоичного файла в таблицу. Более подробную информацию об использовании можно найти на сайте R-пакета. Это, однако, не решает мою проблему, так как я хотел бы, чтобы данные не были в одном двоичном двоичном объекте.
Некоторый контекст проблемы: во время генерации функции я создаю несколько функций, которые я хочу сохранить в базе данных для дальнейшего использования. Теоретически я мог бы создать окончательный фрейм данных со всеми своими функциями и метаданными в нем и использовать некоторые триггеры для выгрузки данных в правильные таблицы, но прежде чем я сделаю это, я бы предпочел установить pymssql
,
Есть какие-нибудь подсказки?
Ps.: Если кто-нибудь знает правильные теги для такого вопроса, дайте мне знать...
1 ответ
Я думаю, что вы ищете, это rx_featurize из пакета microsoftml (устанавливается с revoscalepy)
После того, как у вас есть фрейм данных, вы должны создать RxSqlServerData или RxOdbcData со аргументами строки подключения и имени таблицы.
Затем вы просто вызываете rx_featurize, давая ему фрейм данных в качестве входных данных и объект данных Rx... в качестве выходных данных (указывая, хотите ли вы перезаписать таблицу или нет)
http://docs.microsoft.com/en-us/machine-learning-server/python-reference/microsoftml/rx-featurize
import pandas as pd
from revoscalepy import RxOdbcData
from microsoftml import rx_featurize
a_df = pd.DataFrame([[0, 1], [2, 3]], columns=[...])
rx_featurize(data=a_df,output_data=RxOdbcData(connection_string=con_str, table = tablename), overwrite = True)