我试图在一个Id列上加入多个pandas数据帧,但是当我尝试合并时,我收到警告:
KeyError:'Id'.
我想这可能是因为我的数据帧有一个groupby声明产生的偏移列,但我很可能是错的.无论哪种方式,我都无法弄清楚如何"取消堆叠"我的数据帧列标题.这个问题的答案似乎都没有效果.
我的groupby代码:
step1 = pd.DataFrame(step3.groupby(['Id', 'interestingtabsplittest2__grp'])['applications'].sum())
step1.sort('applications', ascending=False).head(3)
Run Code Online (Sandbox Code Playgroud)
返回:
如何将这些偏移标题放到顶层?
在子图中绘制2个distplots或散点图很有效:
import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns
import pandas as pd
%matplotlib inline
# create df
x = np.linspace(0, 2 * np.pi, 400)
df = pd.DataFrame({'x': x, 'y': np.sin(x ** 2)})
# Two subplots
f, (ax1, ax2) = plt.subplots(1, 2, sharey=True)
ax1.plot(df.x, df.y)
ax1.set_title('Sharing Y axis')
ax2.scatter(df.x, df.y)
plt.show()
Run Code Online (Sandbox Code Playgroud)
但是当我使用lmplot其他类型的图表而不是其他任何类型的图表时,我得到一个错误:
AttributeError:'AxesSubplot'对象没有属性'lmplot'
有没有办法将这些图表类型并排绘制?
当标准网址共享时,Google Plus非常擅长提取Open Graph元标记指定的图片,如:
http://stackoverflow.com/questions/22342854/what-is-the-optimal-algorithm-for-the-game-2048
看到:

但是,当您开始附加查询字符串时,事情开始变得棘手,例如在此URL中完成:
http://stackoverflow.com/questions/22342854/what-is-the-optimal-algorithm-for-the-game-2048?utm_source=google-plus&utm_medium=social&utm_campaign=stackoverflow-general-promotion

对于某些URL +查询字符串,默认图像似乎完全没有意义:
http://skeptics.stackexchange.com/questions/4508/can-every-grain-of-sand-be-addressed-in-ipv6?xyz_12312313

上面的screengrab中的图像是最后留下对共享问题的答案的人的用户pic.
是否有任何方法可以强制Google Plus退回由og:image标签定义的图像,即使附加了查询字符串?
query-string open-graph-protocol google-plus facebook-opengraph
我有一个".dat"文件,其中保存了X和Y的值(所以一个元组(n,2),其中n是行数).
import numpy as np
import matplotlib.pyplot as plt
import scipy.interpolate as interp
from sklearn import linear_model
in_file = open(path,"r")
text = np.loadtxt(in_file)
in_file.close()
x = np.array(text[:,0])
y = np.array(text[:,1])
Run Code Online (Sandbox Code Playgroud)
我创建了一个实例linear_model.LinearRegression(),但是当我调用.fit(x,y)我得到的方法时
IndexError:元组索引超出范围
regr = linear_model.LinearRegression()
regr.fit(x,y)
Run Code Online (Sandbox Code Playgroud)
我做错了什么?
我有一个看起来像这样的数据框:
我想将A:D范围内的所有1替换为列的名称,以便最终结果类似于:
我怎样才能做到这一点?
您可以使用以下方法重新创建我的数据框:
dfz = pd.DataFrame({'A' : [1,0,0,1,0,0],
'B' : [1,0,0,1,0,1],
'C' : [1,0,0,1,3,1],
'D' : [1,0,0,1,0,0],
'E' : [22.0,15.0,None,10.,None,557.0]})
Run Code Online (Sandbox Code Playgroud) 我最近一直在使用iPython(又名Jupyter)进行数据分析和一些机器学习.但令人头疼的是将笔记本应用程序(浏览器)的结果复制到Excel或Google表格中,这样我就可以操纵结果或与不使用iPython的人分享.
我知道如何将结果转换为csv并保存.但后来我必须挖掘我的电脑,打开结果并将它们粘贴到Excel或Google表格中.这花费了太多时间.
只是突出显示结果数据帧和复制/粘贴通常会完全混淆格式,列溢出.(更不用说在iPython中打印时被截断的长结果数据帧的问题.)
如何轻松地将iPython结果复制/粘贴到电子表格中?
我有一个大约5000个与IP相关的用户事件的电子表格,我正在尝试使用IP来仅使用Excel公式来确定位置.我日志中的IP结构为"点状四边形"(十进制表示法).
我认为VLOOKUP是这里的方式,所以我下载了WEBNet77的IPV4 IpToCountry数据库,这似乎是一个全面的,最新的资源(有没有更好的资源用于此目的?).该数据库包括大约140K行的IP范围,表单的结构如下:

Colum标签A-G分别为:IP FROM,IP TO,REGISTRY,ASSIGNED,CTRY,CNTRY,COUNTRY.
注意,一个问题:列A到B代表一系列IP,但是它们是"长格式"(我最初没有意识到这一点).因此,在使用这些值作为参考之前,我将必须转换我的虚线四边形.然后,我想为我日志中的每个IP返回Country(G列).
这里有什么帮助?
如果你认为有更好的方法在Excel中查找IP>国家(也许使用网络即http://api.hostip.info/flag.php?ip=xxx.xxx.xxx.xxx),请告诉我.
在Python中绘制单个变量函数非常简单matplotlib.但我正在尝试在散点图中添加第三个轴,以便我可以看到我的多变量模型.
这是一个示例代码段,有30个输出:
import numpy as np
np.random.seed(2)
## generate a random data set
x = np.random.randn(30, 2)
x[:, 1] = x[:, 1] * 100
y = 11*x[:,0] + 3.4*x[:,1] - 4 + np.random.randn(30) ##the model
Run Code Online (Sandbox Code Playgroud)
如果这只是一个单一的变量模型,我可能会使用这样的东西来生成最佳拟合的图和线:
%pylab inline
import matplotlib.pyplot as pl
pl.scatter(x_train, y_train)
pl.plot(x_train, ols.predict(x_train))
pl.xlabel('x')
pl.ylabel('y')
Run Code Online (Sandbox Code Playgroud)
多变量可视化的等价物是什么?
我对SQL比较陌生.我一直在努力构建一个返回单行的非常简单的查询.
我正在尝试从几个不同的表中选择多个列值计数,每个计数在相同的日期范围内被拉出.
我的数据库中的表类似于:
| CreationDate | LastName | EventType |
|:--------------------|------------:|:------------:| ...
| 2013-01-02 18:00:21 | Doe | 2 |
| 2013-01-07 18:00:24 | Blanks | 2 | ...
| 2013-01-09 17:00:21 | Puccini | 1 |
Run Code Online (Sandbox Code Playgroud)
所有表都有类似的CreationDate列.
现在我的查询是一个单一的JOIN,如下所示(这似乎有效).我正在尝试添加一个或多个JOIN,以便我可以将每个表的多个计数返回到单行结果.我目前的查询:
DECLARE @startdate DATETIME = '##startdate##';
DECLARE @enddate DATETIME = '##enddate##';
SELECT ISNULL(t2.Year, t1.Year) ,
ISNULL(t2.Month, t1.Month) ,
t1.LastName1 ,
t2.LastName2
FROM ( SELECT DATEPART(year, table1.CreationDate) Year ,
DATEPART(month, table1.CreationDate) Month ,
COUNT(table1.column2) LastName1
FROM table1
WHERE EventType = 2
AND CreationDate …Run Code Online (Sandbox Code Playgroud) 我终于设法将我的hexbin分布图变成了几乎漂亮的东西.
import seaborn as sns
x = req.apply_clicks
y = req.reqs_wordcount
sns.jointplot(x, y, kind="hex", color="#5d5d60",
joint_kws={'gridsize':40, 'bins':'log'})
Run Code Online (Sandbox Code Playgroud)
但是我希望在它上面覆盖一条回归线,并且无法弄清楚如何这样做.例如,当我将regplot添加到代码时,回归线似乎占据了边际图:
x = req.apply_clicks
y = req.reqs_wordcount
z = sns.jointplot(x, y, kind="hex", color="#5d5d60",
joint_kws={'gridsize':40, 'bins':'log'})
sns.regplot(x, y, data=z, color="#5d5d60", scatter=False)
Run Code Online (Sandbox Code Playgroud)
如何将回归线包含在图表的主体中?
python ×7
matplotlib ×3
dataframe ×2
excel ×2
ipython ×2
pandas ×2
seaborn ×2
google-plus ×1
ip-address ×1
ipv4 ×1
location ×1
numpy ×1
query-string ×1
scikit-learn ×1
sql ×1
sql-server ×1
vlookup ×1