24小时热门版块排行榜    

查看: 740  |  回复: 22
当前主题已经存档。
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

dedream

木虫 (正式写手)

[交流] 【已找到临时方案解决问题】等间距的数据,批量处理某一列的间距

我有一些数据,其中一列的数据是等间距的,其他列的数据没有规律

如:
a行  100.1  x1  x2   x3   x4...
b行  100.2  y1  y2   y3   y4...
c行  100.3   z1  z2   z3   z4...

n行  .....

我想处理成
a行  100.15  m1  m2   m3   m4...
b行  100.30  n1  n2   n3   n4...
c行  100.45  p1  p2  p3  p4...
n行  .....
只改变其中一列数据的间距,但要保证处理前后的数据成的图的形状不发生较大的改变

应该怎么处理?有没有好用的工具?
谢谢大家。

[ Last edited by dedream on 2010-2-7 at 18:07 ]
回复此楼
从数据到结论
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hakekill

木虫 (小有名气)

dedream(金币+10):就是分段插值 2010-02-05 16:41
dedream(金币+10):能详细一些吗?谢谢你 2010-02-06 15:22
这个自己编程的话就是一个分段插值就可以
9楼2010-02-05 14:41:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hakekill

木虫 (小有名气)

dedream(金币+50):我用excel解决了,思路是一样的 2010-02-07 18:04
dedream(金币+30):再次感谢 2010-02-07 18:08
以线性插值为例:

100.1   20   13   15
100.2   30   25    30
得出
100.15    25     19    22.5
这个自己编程思路是先读入现有数据,然后依据相同的间隔将x区域划分成一个新的x的数组,以上面为例
x_old[1]=100.1,x_old[2]=100.2;
x_new[1]=100.15
线性插值公式:
y_new[1] = y_old[1]+(y_old[2]-y_old[1])/([x_old[2]-x_old[1])*(x_new[1]-x_old[1])

当然在插值之前必须先用去查找x_new[1]的值落在那两个x_old,x_old[i+1]之间
16楼2010-02-07 09:20:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 dedream 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见