我正在尝试排列大小(1425 x 15)的特征矩阵,其中每一列代表每个传感器的固有频率,每一行代表一个数据文件。但是,我继续在每一列中获得相同的值,并且下一个值打印到下一行。我将如何重新排列特征矩阵?
我试图形成一个可以在下面找到的代码,但是,我不知道代码中的错误。我形成了不同的代码,但结果仍然相同。请在下面找到形成的代码:
代码1:
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="accordion-content">
<h2>Question 1</h2>
<p>Some answers for question 1</p>
<h2>Question 2</h2>
<p>Some answers for question 2</p>
<h2>Question 3</h2>
<p>Some answers for question 3</p>
</div>
代码2:
# Matrix array:
DataSizerow=0
DataSizecolumn=0
Data = np.zeros((1425,15))
# Forming a feature matrix from frequency, PSD and AutoCorrelation values:
# Dataset.shape[1] represesnt the acceleration dataset column
# List_Of_DataFrame_Feature = []
# List_Of_DataFrame_Label = []
Length_PSD_mean = len(x_axis_list_psd_filtered)
print('Length of PSD values: ', Length_PSD_mean)
if Length_PSD_mean > 1:
for PSD_Mean in range(Length_PSD_mean):
X_axis_values_psd_mean = mean(x_axis_list_psd_filtered)
else:
X_axis_values_psd_mean = x_axis_list_psd_filtered
DataFrame_Feature = np.array(X_axis_values_psd_mean)
DataFrame_Feature1 = np.array(x_axis_list_filtered)
DataSizecolumn = DataSizecolumn + 1
print('Data Size column: ',DataSizecolumn)
Data[DataSizecolumn - 1] = DataFrame_Feature
if DataSizecolumn in range(1, dataset.shape[1]):
DataSizerow = DataSizerow + 1
print('Data Size row: ', DataSizerow)
Data[DataSizerow - 1] = DataFrame_Feature
print('Sensor {0}'.format(k))
print('Data Frame: ', Data)
代码3:
# Dataset.shape[0] represesnt the acceleration dataset row
# Dataset.shape[1] represesnt the acceleration dataset column
DataSizecolumn1 = 0
DataSizerow1 = 0
DataFrame1 = np.zeros((1426, 16))
for DataSizecolumn1 in range(1, dataset.shape[1]):
print('Data Size column: ', DataSizecolumn1)
for DataSizerow1 in range(1, dataset.shape[0]):
print('Data Size row: ', DataSizerow1)
DataFrame1[DataSizerow1][DataSizecolumn1] = DataFrame_Feature
print('Sensor {0}'.format(k))
print('DataFrame: ', DataFrame1)
预期结果应类似于单行下面的矩阵:
# Dataset.shape[0] represesnt the acceleration dataset row
# Dataset.shape[1] represesnt the acceleration dataset column
DataSizecolumn2 = 0
DataSizerow2 = 0
DataFrame2 = np.zeros((1426, 16))
for DataSizecolumn2 in range(1, dataset.shape[1]):
print('Data Size column: ', DataSizecolumn2)
DataFrame2[DataSizecolumn2] = DataFrame_Feature
if DataSizecolumn2 == dataset.shape[1]:
DataSizerow2 = DataSizerow2 + 1
print('Data Size row: ', DataSizerow2)
DataFrame2[DataSizerow2] = DataFrame_Feature
if DataSizerow2 == dataset.shape[0]:
break
print('Sensor {0}'.format(k))
print('DataFrame: ', DataFrame2)
但是实际结果如下:
Sensor 1 | Sensor 2 | Sensor 3 | Sensor 4 | Sensor 5 | Sensor 6 |
Data file 13 | 51.5 | 13 | 13 | 13 | 13 |
Sensor 7 | Sensor 8 | Sensor 9 | Sensor 10 | Sensor 11 | Sensor 12 |
Data file 8.5 | 14 | 20 | 18.6 | 9.5 | 39 |
Sensor 13 | Sensor 14 | Sensor 15 |
Data file 8.5 | 8.5 | 8.5 |
Actual Feature matirx text file
请在下面找到整个代码:
Sensor 1 | Sensor 2 | Sensor 3 | Sensor 4 | Sensor 5 | Sensor 6 |
Data file 13 | 13 | 13 | 13 | 13 | 13 |
Sensor 7 | Sensor 8 | Sensor 9 | Sensor 10 | Sensor 11 | Sensor 12 |
Data file 13 | 13 | 13 | 13 | 13 | 13 |
Sensor 13 | Sensor 14 | Sensor 15 |
Data file 13 | 13 | 13 |
数据集来自网站链接。 链接:http://users.metropolia.fi/~kullj/JrkwXyZGkhF/wooden_bridge_time_histories/
谢谢您的帮助。