在处理一些数据表格时,会有类似如下的表格,X,Y,Z数据。
需要把X,Y,Z分别转换为三列数据,如下,0,1,2分别对应X,Y,Z
代码如下:
import numpy as np
import pandas as pd
df = pd.read_excel("D:\Test\M24p4 360V efficiency.xlsx", sheet_name='interp2d')
x = df.columns[1:]
y = df.values[:, 0]
z = df.values[:, 1:]
X, Y = np.meshgrid(x, y)
XX, YY, ZZ = X.flatten(), Y.flatten(), z.flatten()
res = np.hstack((XX.reshape(-1, 1), YY.reshape(-1, 1), ZZ.reshape(-1, 1)))
np.save('res.txt', res)
dff = pd.DataFrame(res)
dff.to_excel('D:\Test\Text_new.xlsx')