小编use*_*780的帖子

在Seaborn中绘制具有与"hue"类似的多个属性的图表

我有以下示例数据集df,其中舞台时间是到达那里的天数:

id stage1_time stage_1_to_2_time stage_2_time stage_2_to_3_time stage3_time
a  10          30                40           30                70
b  30               
c  15          30                45     
d       
Run Code Online (Sandbox Code Playgroud)

我编写了以下脚本来获取stage1_time针对CDF 的散点图:

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
import scipy.stats as stats

dict = {'id': id, 'stage_1_time': [10, 30, 15, None], 'stage_1_to_2_time': [30, None, 30, None], 'stage_2_time' : [40, None, 45, None],'stage_2_to_3_time' : [30, None, None, None],'stage_3_time' : [70, None, None, None]}
df = pd.DataFrame(dict)

#create eCDF function
def ecdf(df): …
Run Code Online (Sandbox Code Playgroud)

python matplotlib python-2.7 pandas

11
推荐指数
1
解决办法
1864
查看次数

psycopg2 的 fast_executemany 替代方案

我有一个 Redshift 服务器,它是通过 psycopg2 启动的(请注意,公司服务器不支持 ODBC,因此我无法使用 pyodbc)。

目前,通过pd.to_sql()将30-35k 行从数据帧写入 Redshift DB 需要10 多分钟。因此,作为一种解决方法,我将 DF 下载为 csv,将文件推送到 S3,然后用于copy写入数据库。

根据使用 pyODBC 的 fast_executemany 加速 Pandas.DataFrame.to_sqlfast_executemany解决方案本来是完美的 -但是psycopg2. 我还发现d6tstack根据https://github.com/d6t/d6tstack/blob/master/examples-sql.ipynbpd_to_psql不适用于 Redshift,只有 Postgresql(不能copy... from stdin

我可以为我的案例使用任何替代方案吗?

这是我的代码:

import sqlalchemy as sa

DATABASE = ""
USER = ""
PASSWORD = ""
HOST = "...us-east-1.redshift.amazonaws.com"
PORT = "5439"
SCHEMA = "public" 

server = "redshift+psycopg2://%s:%s@%s:%s/%s" % (USER,PASSWORD,HOST,str(PORT),DATABASE)
engine = …
Run Code Online (Sandbox Code Playgroud)

python sqlalchemy

8
推荐指数
1
解决办法
3244
查看次数

df [x],df [[x]],df ['x'],df [['x']]和df.x之间的差异

苦苦挣扎,了解标题中5个例子之间的区别.是系列与数据框架的一些用例吗?应该何时使用另一个?哪个是等价的?

python series dataframe pandas

5
推荐指数
1
解决办法
1264
查看次数

无法使用 IAM 角色凭证通过 Python 将文件上传到 S3

以下已解决的问题允许我在 Redshift 中卸载、复制、运行查询、创建表等:Redshift create table not work via PythonUnload to S3 with Python using IAM Rolecredential。请注意,即使我通过 Redshift 成功写入 S3 并从 S3 复制,也不依赖于 Boto3。

我希望能够使用Python(来自cwd)将文件动态上传到S3 - 但是我似乎没有找到如何使用而iam_role 'arn:aws:iam:<aws-account-id>:role/<role_name>不是按照http访问和密钥的文档或示例: //boto3.readthedocs.io/en/latest/guide/quickstart.html

任何帮助是极大的赞赏。这就是我现在所拥有的,它会引发以下错误Unable to locate credentials

import boto3

#Input parameters for s3 buckets and s3 credentials
bucket_name = ''
bucket_key = ''
filename_for_csv = 'output.csv'    

#Moving file to S3
s3 = boto3.resource('s3')
data = open(filename_for_csv, 'rb')
s3.Bucket(bucket_name).put_object(Key=bucket_key, Body=data, ServerSideEncryption='AES256')
Run Code Online (Sandbox Code Playgroud)

python amazon-s3 amazon-web-services

4
推荐指数
1
解决办法
5896
查看次数

一周的第一天(从星期日开始)

我发现有一个函数last_day用于一个月的最后一天,以及date_part(dow, date)从星期日开始的星期几的数字,但我试图取一个日期,并获得那一周的第一天。

含义:如果 date=' 2018-02-14' 那么结果应该是 ' 2018-02-11'。

有任何想法吗?

sql amazon-redshift

4
推荐指数
2
解决办法
1万
查看次数

Python 中的偏相关

我运行了一个相关矩阵:

sns.pairplot(data.dropna())
corr = data.dropna().corr()
corr.style.background_gradient(cmap='coolwarm').set_precision(2)
Run Code Online (Sandbox Code Playgroud)

并且看起来与advisory_pct相当(0.57)负相关all_brokerage_pct。据我所知,我可以声称我们相当确定“当顾问在其投资组合中的咨询比例较低时,他的投资组合中所有经纪业务的比例都很高”。

然而,这是一种“成对”相关性,我们没有控制其余可能变量的影响。

我搜索了 SO,但无法找到如何运行“偏相关”,其中相关矩阵可以提供每两个变量之间的相关性 - 同时控制其余变量。为此,让我们假设brokerage %+ etf brokerage %+ advisory %+ all brokerage %= ~100% 的投资组合。

有这样的功能吗?

在此处输入图片说明 在此处输入图片说明

-- 编辑 -- 按照https://stats.stackexchange.com/questions/288273/partial-correlation-in-panda-dataframe-python运行数据:

dict = {'x1': [1, 2, 3, 4, 5], 'x2': [2, 2, 3, 4, 2], 'x3': [10, 9, 5, 4, 9], 'y' : [5.077, 32.330, 65.140, 47.270, 80.570]} 
data = pd.DataFrame(dict, columns=['x1', 'x2', 'x3', 'y'])

partial_corr_array = df.as_matrix()
data_int = np.hstack((np.ones((partial_corr_array.shape[0],1)), partial_corr_array)) …
Run Code Online (Sandbox Code Playgroud)

python correlation pandas

4
推荐指数
2
解决办法
1万
查看次数

split_part 多个分隔符

有没有办法在多个分隔符上使用 split_part ?因此,如果存在空格(如图所示)或逗号,lower(trim(split_part(t.advisor_last_name,' ',1))我想拆分。advisor_last_name我们基本上有很多 CPA、CFA、CIMA 等,不允许我在不同文件之间进行适当的匹配。

有什么建议么?

sql amazon-redshift

1
推荐指数
1
解决办法
4974
查看次数

没有“WITH NO SCHEMA BINDING”的视图返回关系“不存在”错误

我创建了一些基本视图WITH NO SCHEMA BINDING。在这些视图之一之上,我想创建一个主视图,但这迫使我在没有WITH NO SCHEMA BINDING子句的- 由于对基本视图的依赖,我假设。

创建主视图后,如果我通过select * from master_view一切正常查询它。但是,几个小时后查询它 - 我收到一个关系“不存在”错误..另一方面,从任何非主视图(创建WITH NO SCHEMA BINDING永远不会失败..

知道为什么会发生这种情况,以及如何确保主视图在创建一次后永久存在?

sql view amazon-redshift

1
推荐指数
1
解决办法
3230
查看次数

“开”左加入顺序

我通读了20多个标题相似的帖子,但找不到答案,因此如果有一个答案,请提前道歉。

我一直相信

select * FROM A LEFT JOIN B on ON A.ID = B.ID
Run Code Online (Sandbox Code Playgroud)

相当于

select * FROM A LEFT JOIN B on ON B.ID = A.ID
Run Code Online (Sandbox Code Playgroud)

但今天被告知“由于您有左连接,因此必须将其设为A = B,因为翻转后它将充当内部连接。

有什么道理吗?

sql outer-join

1
推荐指数
1
解决办法
40
查看次数