2
我想將this file轉換爲pandas數據框。將mat文件轉換爲pandas數據框
import pandas as pd
import scipy.io
mat = scipy.io.loadmat('cardio.mat')
cardio_df = pd.DataFrame(mat)
我得到這個錯誤: Exception: Data must be 1-dimensional
我想將this file轉換爲pandas數據框。將mat文件轉換爲pandas數據框
import pandas as pd
import scipy.io
mat = scipy.io.loadmat('cardio.mat')
cardio_df = pd.DataFrame(mat)
我得到這個錯誤: Exception: Data must be 1-dimensional
看來mat
是包含形狀(1831, 21)
的X
,y
與形狀(1831, 1)
的字典,和一些元數據。假設X
是數據和y
是同一標籤,可以用np.hstack
水平堆疊它們,並將它們加載到大熊貓:
In [1755]: mat = scipy.io.loadmat('cardio.mat')
In [1758]: cardio_df = pd.DataFrame(np.hstack((mat['X'], mat['y'])))
In [1759]: cardio_df.head()
Out[1759]:
0 1 2 3 4 5 6 \
0 0.004912 0.693191 -0.203640 0.595322 0.353190 -0.061401 -0.278295
1 0.110729 -0.079903 -0.203640 1.268942 0.396246 -0.061401 -0.278295
2 0.216546 -0.272445 -0.203640 1.050988 0.148753 -0.061401 -0.278295
3 0.004912 0.727346 -0.203640 1.212171 -0.683598 -0.061401 -0.278295
4 -0.100905 0.363595 1.321366 1.027120 0.141359 -0.061401 -0.278295
In [1760]: cardio_df.shape
Out[1760]: (1831, 22)
@COLDSPEED如何轉換爲陣列狀的形狀與=(N_SAMPLES次,n_features )? – KouchakYazdi
@KouchakYazdi你的意思是,你想先重塑它? –
@COLDSPEED如果我想要一個數組中的mat文件,比如shape =(n_samples,n_features)格式,該怎麼辦? (不是數據框) – KouchakYazdi