Re: [问题] 请问我该用那些功能?

楼主: chungyuandye (养花种鱼数月亮赏星星)   2013-04-29 12:18:24
※ 引述《van6499 (KIDD)》之铭言:
: 现在有数列如下:
: X Y
: 1 2
: 2 4
: 3 3
: 4 1
: 5 5
: 6 3
: 7 6
: 8 4
: 想要进行的运算如下
: vario(h)=1/N(h)*总和[y(x)-y(x+h)]^2
: N(h)=间格为h时的组数
: 范例如下
: h=1时, N(h)=7组 (X=1和2,2和3,3和4,4和5,5和6,6和7,7和8)
: vario(1)=1/7*[(2-4)^2+(4-3)^2+(3-1)^2+(1-5)^2+(5-3)^2+(3-6)^2+(6-4)^2]
: h=2时, N(h)=6组 (X=1和3,2和4,3和5,4和6,5和7,6和8)
: vario(2)=1/6*[(2-3)^2+(4-1)^2+(3-5)^2+(1-3)^2+(5-6)^2+(3-4)^2]
: 到时可以得出(h,vario(h))的数对作图
: 想请问在N(h)以及总和[y(x)-y(x+h)]^2
: 我该使用那些功能来进行?有试着试过Table、Drop、Range的组合下去写
: 但是得不到我想要的结果
: 恳请各位大大相助
data = {{1, 2}, {2, 4}, {3, 3}, {4, 1}, {5, 5}, {6, 3}, {7, 6}, {8,
4}};
mylist[k_] := Table[{data[[i]], data[[i + k]]}, {i, Length@data - k}]
vario[k_] := Mean[(#[[1, 2]] - #[[2, 2]])^2 & /@ mylist[k]]
ListLinePlot[Table[{z, vario[z]}, {z, 1, Length@data - 1}]]
作者: van6499 (KIDD)   2013-04-29 15:10:00
如果data变成{{1.1,2},{1.2,4},{1.3,3},{1.4,1},{1.5,5}{1.6,3},{1.7,6},{1.8,4}}的话改怎么修改读取间距更正{{1.2,2},{1.4,4},{1.6,3},{1.8,1},{2.0,5},{2.2,3}{2.4,6},{2.6,4}让读取间距变成 0.2、0.4、0.6、0.8、1.0...、1.6的话该怎么改?

Links booklink

Contact Us: admin [ a t ] ucptt.com