【Python】计算一个序列数据的镜像(倒影)对应的值

1.问题

有一维数据:

y = [5023, 5075, 5115, 5100, 5103, 5086, 5098, 5108, 5093, 5105]

要计算这组数据对第一个值的镜像(或者说是倒影) 对应的值。

2.算法

可以先计算每个数据到第一个值的距离,然后每个值再减去对应的2倍距离。

y1 = [x-(2*(x-y[0])) for x in y]

如果是多维数据的话,用torch.cat([y1,y2,y3], dim=1)装起来,然后加个负号就好了。

data = torch.cat([y1,y2,y3], dim=1)

data1 = -data

3.完整代码

import matplotlib.pyplot as plt

y = [5023, 5075, 5115, 5100, 5103, 5086, 5098, 5108, 5093, 5105]
y1 = [x-(2*(x-y[0])) for x in y]
x = [x for x in range(0, len(y))]
print(y, x)

# 画图
plt.plot(x, y, marker='o', mec='r', mfc='w')
plt.plot(x, y1, marker='o', mec='r', mfc='w')
for a, b in zip(x, y):
    plt.text(a, b + y[-1] * 0.001, round(b, 4), ha='center', va='bottom', fontsize=9)
for a, b in zip(x, y1):
    plt.text(a, b + y1[-1] * 0.001, round(b, 4), ha='center', va='bottom', fontsize=9)
plt.show()

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

狮子王量化

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值