使用分段包创建分段线性回归我在尝试设置自己的断点时看到错误; 似乎只有当我尝试设置两个以上时.
(编辑)这是我正在使用的代码:
# data
bullard <- structure(list(Rt = c(0, 4.0054, 25.1858, 27.9998, 35.7259, 39.0769,
45.1805, 45.6717, 48.3419, 51.5661, 64.1578, 66.828, 111.1613,
114.2518, 121.8681, 146.0591, 148.8134, 164.6219, 176.522, 177.9578,
180.8773, 187.1846, 210.5131, 211.483, 230.2598, 262.3549, 266.2318,
303.3181, 329.4067, 335.0262, 337.8323, 343.1142, 352.2322, 367.8386,
380.09, 388.5412, 390.4162, 395.6409), Tem = c(15.248, 15.4523,
16.0761, 16.2013, 16.5914, 16.8777, 17.3545, 17.3877, 17.5307,
17.7079, 18.4177, 18.575, 19.8261, 19.9731, 20.4074, 21.2622,
21.4117, 22.1776, 23.4835, 23.6738, 23.9973, 24.4976, 25.7585,
26.0231, 28.5495, 30.8602, 31.3067, 37.3183, 39.2858, 39.4731,
39.6756, …Run Code Online (Sandbox Code Playgroud) 我的Ubuntu机器的性能对于R kmeans{stats}来说很糟糕,而Windows 7没有显示任何问题.
X是一个5000 x 5矩阵(数值变量).
k= 6
我的台式机是Intel Xeon CPU W3530 @ 2.80GHz x 8(即8核)Dell Precision T3500,带有24 GB RAM的Ubuntu 12.04.4 LTS(GNU/Linux 3.2.0-58-generic x86_64).
R版本3.0.2(2013-09-25) - "飞盘航行"版权所有(C)2013 R统计计算平台基础:x86_64-pc-linux-gnu(64位)
> system.time(X.km <- kmeans(X, centers=k, nstart=25))
user system elapsed
49.763 52.347 103.426
Run Code Online (Sandbox Code Playgroud)
与配备Intel Core i5-2430M @ 2.40GHz,2核,8 GB RAM,R 3.0.1和相同数据的Windows 7 64位笔记本电脑相比:
> system.time(X.km <- kmeans(X, centers=k, nstart=25))
user system elapsed
0.36 0.00 0.37
Run Code Online (Sandbox Code Playgroud)
更快,更快.因为nstart=1问题仍然存在,我只是想放大执行时间.
有什么明显的东西我不见了吗?
亲自尝试一下,看看你取得的成就:
set.seed(101)
k <- 6
n <- as.integer(10)
el.time <- vector(length=n) …Run Code Online (Sandbox Code Playgroud) 我有一个时间和深度变化的功能,简化为:
def f(z,t):
return np.exp(-z)*np.sin(t-z)
z = np.linspace(0,3000,num=3001)
t = np.arange(0,40000,4000)
Run Code Online (Sandbox Code Playgroud)
我想在t的每个时间步骤绘制所有z的结果,结果是这样的:

但我不知道怎么做.我确信这很简单,但我不习惯在python中这样做.
这是我的工作示例:
library(ggplot2)
library(directlabels) # ver 2014.6.13 via r-forge
DF <- expand.grid(z = seq(1, 3001, by=10), k = seq(from=0.5, to=5, by=0.25))
# Defines the function value for each z-k combination
DF$dT <- with(DF, -0.07 * z * (1/2.75 - 1/k))
p <- ggplot(DF, aes(x = z, y = k, z = dT)) + theme_bw() +
stat_contour(aes(colour=..level..), breaks=c(seq(from=-40, to=0, by=5), c(seq(from=5, to=150, by=10))))
angled.boxes <- list("far.from.others.borders","calc.boxes","enlarge.box","draw.rects")
direct.label(p, "angled.boxes")
Run Code Online (Sandbox Code Playgroud)
看起来像这样:

我想将标签的框边框颜色变为"白色",但我看不出怎么做.在包的新闻中,写道:
2.5 --- 2012年4月6日
draw.rects具有可配置的颜色,默认为黑色.
并且看作"angled.boxes"的列表包括:
angled.boxes <- list("far.from.others.borders","calc.boxes","enlarge.box","draw.rects")
Run Code Online (Sandbox Code Playgroud)
我想这是可能的,但是怎么样?
使用一些实验数据,我不能为我的生活弄清楚如何使用splrep来创建B样条.数据如下:http://ubuntuone.com/4ZFyFCEgyGsAjWNkxMBKWD
这是一段摘录:
#Depth Temperature
1 14.7036
-0.02 14.6842
-1.01 14.7317
-2.01 14.3844
-3 14.847
-4.05 14.9585
-5.03 15.9707
-5.99 16.0166
-7.05 16.0147
Run Code Online (Sandbox Code Playgroud)
这是一个关于x的深度和温度的情节:

这是我的代码:
import numpy as np
from scipy.interpolate import splrep, splev
tdata = np.genfromtxt('t-data.txt',
skip_header=1, delimiter='\t')
depth = tdata[:, 0]
temp = tdata[:, 1]
# Find the B-spline representation of 1-D curve:
tck = splrep(depth, temp)
### fails here with "Error on input data" returned. ###
Run Code Online (Sandbox Code Playgroud)
我知道我正在做一些愚蠢的事,但我只是看不到它.
钻孔数据包含"项圈"信息:X,Y和Z(Z是地面高程,Z = 0是平均海平面的某些数据),以及Z方向的钻孔长度.
如何创建钻孔轨迹(曲线)的3D图?我正在寻找R中的解决方案,但也对python感兴趣(虽然它没有标记它,如果它只是混淆).
结果可能与ArcScene中的此图像类似:
.
这里,钻孔轨迹由来自一个或多个单独文件的另一个参数着色,并且键入钻孔名称或某个索引.(此查看器还允许使用鼠标旋转视口.)
钻孔也可能是非垂直的,而不是直的.
以下是一些数据:
> dput(collars)
structure(list(boreid = c(47063L, 47311L, 49511L, 52752L, 58935L,
58937L, 65763L, 67441L, 67442L, 77351L, 77436L, 77945L, 84156L,
89809L, 90138L, 95482L, 96560L, 103583L, 104536L, 105222L, 105483L,
105548L, 110720L, 180221L, 301001L, 302293L, 306496L, 306497L,
325725L, 326668L, 327068L, 333303L, 333332L, 333927L, 374749L,
374946L, 376243L, 376244L, 958884L, 958898L, 959394L, 965482L
), easting = c(554952L, 492126L, 537529L, 499972L, 490997L, 487258L,
555368L, 496144L, 493860L, 451445L, 452195L, 525050L, 439191L,
485774L, 519132L, 491804L, 459810L, 476288L, 499113L, 474318L,
513550L, 501624L, …Run Code Online (Sandbox Code Playgroud) 我需要以极其简洁的方式解释这一点,因为我没有统计学的基础知识来更简洁地解释.在SO中询问是因为我正在寻找python解决方案,但如果更合适,可能会转到stats.SE.
我有井下数据,可能有点像这样:
Rt T
0.0000 15.0000
4.0054 15.4523
25.1858 16.0761
27.9998 16.2013
35.7259 16.5914
39.0769 16.8777
45.1805 17.3545
45.6717 17.3877
48.3419 17.5307
51.5661 17.7079
64.1578 18.4177
66.8280 18.5750
111.1613 19.8261
114.2518 19.9731
121.8681 20.4074
146.0591 21.2622
148.8134 21.4117
164.6219 22.1776
176.5220 23.4835
177.9578 23.6738
180.8773 23.9973
187.1846 24.4976
210.5131 25.7585
211.4830 26.0231
230.2598 28.5495
262.3549 30.8602
266.2318 31.3067
303.3181 37.3183
329.4067 39.2858
335.0262 39.4731
337.8323 39.6756
343.1142 39.9271
352.2322 40.6634
367.8386 42.3641
380.0900 43.9158
388.5412 44.1891
390.4162 44.3563
395.6409 44.5837 …Run Code Online (Sandbox Code Playgroud) 我在一些建模软件中运行了2d模拟,我从中获得了带有一组6个属性的x,y点位置的导出.我希望重新创建一个结合数据的数字,如下所示:

椭圆和背景根据属性1着色(并且这些边界当然代表模型几何,但我认为我不能复制它),等值线是属性2的轮廓,箭头字形是来自属性3(x幅度)和4(y幅度).
x,y点是我认为的三角网格的中心,看起来像这样:

我想知道如何用R重建这样的图.首先,我有不规则间隔的数据,因为它是从不规则网格导出的.那就是我被R困住的地方,只是用它来制作盒子和耳语等.
这是数据:
https
://dl.dropbox.com/u/22417033/Ellipses_noheader.txt编辑:字段:x,y,热通量(x),热通量(y),热导率,温度,gradT(x) ,gradT(y).
names(Ellipses) <- c('x','y','dfluxx','dfluxy','kxx','Temps','gradTx','gradTy')
Run Code Online (Sandbox Code Playgroud) r ×6
python ×3
cpu-speed ×1
geospatial ×1
ggplot2 ×1
graphics ×1
linux ×1
maps ×1
matplotlib ×1
performance ×1
piecewise ×1
plot ×1
scipy ×1
ubuntu ×1