У меня есть набор данных, значения столбцов которого должны использоваться в уравнении. Max angle
определяется пользователем, а угловые приращения Ang
будут угловыми шагами.
Предположим, что максимальный угол = 30, угловой прирост = 10, поэтому я хочу 4 выходных строки для каждой входной строки. Только угол должен измениться с 0,10,20,30 в уравнении.
1-й столбец - это мой индекс 'ID'. Мой набор данных состоит из 300 строк. Таким образом, мой окончательный вывод должен содержать 300 * 4 (угловые шаги) строк.
Пример набора данных:
Отредактированный набор данных:
data ='''
ID,1,2,3
23,0.88905321,0.500807892,0.499545029
105,0.334209544,0.24077062,0.345252261
47,0.020669404,0.154582048,0.044395524
28,0.07913145,0.987645061,0.421184162
23,0.5654544,0.879541062,0.456556261
105,0.45678404,0.789546214,0.456217524
import pandas as pd
import numpy as np
from math import *
data ='''
ID,1,2,3
23,0.88905321,0.500807892,0.499545029
105,0.334209544,0.24077062,0.345252261
47,0.020669404,0.154582048,0.044395524
28,0.07913145,0.987645061,0.421184162
'''
df = pd.read_csv(io.StringIO(data),index_col=0)
M = df.iloc[:,:]
#suppose
Max_ang = 30
Ang = 10
#Equation:
solution = 0.88905321*cos(Ang*(pi/180)) + 0.500807892*sin(Ang*(pi/180)) + 0.499545029 * sin(Ang*(pi/180))*cos(Ang*(pi/180))
Уравнение:
решение = Column1_val x cos (Ang x (pi / 180)) + Column2_val x sin (Ang x (pi / 180)) + Column3_val x sin (Ang x (pi / 180)) x cos (Ang x (pi / 180))
Ожидаемый результат: