我正在工作中的 SageMaker 实例上处理笔记本。我的目标是将我的jupyter笔记本连接到雪花数据库以查询一些数据。以下是有关我的问题的一些详细信息;
(practiceenv) sh-4.2$ python --version
Python 3.8.6
Run Code Online (Sandbox Code Playgroud)
在相同的环境下,我确实运行了命令;
conda list
Run Code Online (Sandbox Code Playgroud)
我可以看到包裹;
# Name Version Build Channel
snowflake-connector-python 2.3.10 py38h51da96c_0 conda-forge
Run Code Online (Sandbox Code Playgroud)
所以看起来正确的包就在那里。接下来,我在相同的环境中创建了一个jupyter笔记本(condapython3内核)并尝试导入包
import snowflake.connector
ModuleNotFoundError: No module named 'snowflake
Run Code Online (Sandbox Code Playgroud)
我有一个数据框,其中一列代表国家/地区名称.我的目标是添加一个列,提供大陆信息.请检查以下用例:
my.df <- data.frame(country = c("Afghanistan","Algeria"))
Run Code Online (Sandbox Code Playgroud)
是否有一个包可以用来附加包含大陆名称的数据列而不包含原始数据?
我正在做一个数据操作练习,原始数据集看起来像;
df = pd.DataFrame({
'x1': [1, 2, 3, 4, 5],
'x2': [2, -7, 4, 3, 2],
'a': [0, 1, 0, 1, 1],
'b': [0, 1, 1, 0, 0],
'c': [0, 1, 1, 1, 1],
'd': [0, 0, 1, 0, 1]})
Run Code Online (Sandbox Code Playgroud)
在此列a,b,c是类别而x,x2有特点。目标是将此数据集转换为以下格式;
dfnew1 = pd.DataFrame({
'x1': [1, 2,2,2, 3,3,3, 4,4, 5,5,5],
'x2': [2, -7,-7,-7, 4,4,4, 3,3, 2,2,2],
'a': [0, 1,0,0, 0,0,0, 1,0,1,0,0],
'b': [0, 0,1,0, 1,0,0,0, 0, 0,0,0],
'c': [0,0,0,1,0,1,0,0,1,0,1,0],
'd': …Run Code Online (Sandbox Code Playgroud) 我正在使用 Snowflake 来编写我的 sql 查询。我们有一个巨大的表,其中包含数十亿条记录,其中包含客户信息。目标是获取随机样本并使用 R 查看分布。不幸的是,我们无法使用 RStudio 到数据库的 JDBC/ODBC 连接。这是一个限制。所以我只能从 Snowflake 中提取提取物并导入到 R 中。
困难在于我们有一个名为CUSTOMER SEGMENT的列,它有近 24 个唯一值。目标是获得代表每个细分市场显着比例的样本。我尝试了以下查询;
SELECT DISTINCT *
FROM test sample(10)
Run Code Online (Sandbox Code Playgroud)
获得随机样本,其中每行被选择的概率为 10%。但我没有从客户群的每个值中获取样本。我是否可以知道任何 sql 命令,可以帮助根据客户细分进行分层。提前致谢。
我想在 Seaborn 散点图中更改我的图例的位置和标签。这是我的代码:
ax_total_message_ratio=sns.scatterplot(x='total_messages', y='email_messages_ratio',hue='poi',data=df_new)
ax_total_message_ratio.set_title("Email Messages Ratio vs. Total Messages Across Poi",y=1.12,fontsize=20,fontweight='bold')
ax_total_message_ratio.set_ylabel('Email Messages Ratio')
ax_total_message_ratio.set_xlabel('Total Messages')
ax_total_message_ratio.legend.loc("lower right")
put.show()
Run Code Online (Sandbox Code Playgroud)
但我收到以下错误消息;
'function' object has no attribute 'loc'. 我可以获得有关如何使用 Seaborn 控制传奇的帮助吗?此外,我还需要在图例标签0中用 No 和1Yes替换。谢谢
我有一个数据框,其中很少有具有分箱值的列。这些分箱值是使用选项生成的pd.cut()。列的数据类型由以下给出:
group_credit object
group_transaction object
dtype: object
Run Code Online (Sandbox Code Playgroud)
如上所示,有两列具有分箱值,为了方便起见,我已将它们转换为字符串。然后我尝试对几行进行子集化;
temp=fraud_data[fraud_data['group_transaction']=='[20,23)']
temp
Run Code Online (Sandbox Code Playgroud)
但我根本没有得到任何数据。该值存在于数据框中,如下所示:
fraud_data.head(4)
Run Code Online (Sandbox Code Playgroud)
此代码给出第一行,如下所示;
group_credit| group_transaction
[1500,2000) [20,23)
Run Code Online (Sandbox Code Playgroud)
我能否获得有关如何对已经转换为字符串的分箱值进行子集化的帮助?谢谢
我正在尝试使用以下代码将时间戳类型的新列添加到具有默认值的表中;
ALTER TABLE "DATABASE"."SCHEMA"."TABLE" ADD COLUMN PRESENT_TIME TIMESTAMPNTZ DEFAULT CONVERT_TIMEZONE('UTC',current_timestamp())::TIMESTAMP_NTZ
Run Code Online (Sandbox Code Playgroud)
但这给了我一个错误;
SQL编译错误:列默认表达式无效 [CAST(CONVERT_TIMEZONE('UTC', CAST(CURRENT_TIMESTAMP() AS TIMESTAMP_TZ(9))) AS TIMESTAMP_NTZ(9))]
编辑
ALTER TABLE "DATABASE"."SCHEMA"."TABLE" ADD COLUMN PRESENT_TIME TIMESTAMP
DEFAULT CURRENT_TIMESTAMP()
Run Code Online (Sandbox Code Playgroud)
错误:
列默认表达式 [CURRENT_TIMESTAMP()] 无效
我可以寻求帮助来纠正这个错误吗?谢谢
python ×3
snowflake-cloud-data-platform ×3
pandas ×2
python-2.7 ×2
r ×2
python-3.x ×1
seaborn ×1
sql ×1