我需要写数据帧雪花,通过使用snowflake.snowpark。我有一些熊猫。DataFrame,有一些转换(误差矩阵,描述统计,模型输出,…),但我不能把它写回我的雪花数据库。谢谢你的帮助。
from snowflake.snowpark import Session
from snowflake.snowpark import table
from snowflake.snowpark.functions import udf
from snowflake.snowpark.functions import col
from snowflake.snowpark.types import StringType
sess = None
print('Connecting...')
cnn_params = {
"account": "eu-west-1",
"user": "user",
"password": 'pass',
"warehouse": "xs",
"database": "demodb",
"schema": "demosch",
"role": "ACCOUNTADMIN"
}
try:
print('session...')
import pandas as pd
import numpy as np
sess = Session.builder.configs(cnn_params).create()
df = pd.DataFrame(np.random.randint(0,100,size=(100, 4)), columns=list('ABCD'))
#print(df.describe())
df.describe().write.mode("overwrite").save_as_table("describe_output", table_type="temporary")
except Exception as e:
print(e)
finally:
if sess:
sess.close()
print('connection closed...')
print('done.')
我输出:
'DataFrame' object has no attribute 'write'
connection closed...
您可以使用session.write_pandas(df)
将pandas数据框写入Snowflake表,或者您可以使用create_dataframe
创建Snowpark数据框,然后使用.write.mode...
您已经创建了一个Pandas数据框架。您需要一个Snowflake数据框架来回写数据库。关于创建雪花数据框架
,请参见Snowflake文档中的示例3。