我正在尝试使用 Python 中导入的 Matlab 结构创建二维 (2-D) 数据结构。
当我使用 pandas.DataFrame 时,每个单元格都包含一个矩阵,但是它们以列表格式显示。我正在尝试将其更改为矩阵格式。
使用以下代码,Python 中的 DataFrame 看起来类似:
(但是,它不一样,因为真实数据是从 Matlab 导入的,并且会有不同的类型,我无法使用 python 重新创建它)
import pandas as pd
k=[[0,1,2,3,4,5,6]]
df=pd.DataFrame(k)
df[:] = df[:].astype('object')
df.at[0,0] = [[1]]
df.at[0,1] = [[1.0,2.0],[2.0,4.0],[8.0,3.0],[9.0,7.0]]
df.at[0,2] = [[0.487],[1.532],[1.544],[1.846]]
df.at[0,3] = [[3.0]]
df.at[0,4] = [[3.0]]
df.at[0,5] = [[-1]]
df.at[0,6] = [[]]
display(df)
Which results in:
(您还可以通过运行以下代码片段找到类似的结果。)
<table border="1" class="dataframe">
<thead>
<tr style="text-align: right;">
<th></th>
<th>0</th>
<th>1</th>
<th>2</th>
<th>3</th>
<th>4</th>
<th>5</th>
<th>6</th>
</tr>
</thead>
<tbody>
<tr>
<th>0</th>
<td>[[1]]</td>
<td>[[1.0, 2.0], [2.0, 4.0], [8.0, 3.0], [9.0, 7.0]]</td>
<td>[[0.487], [1.5326], [1.544], [1.846]]</td>
<td>[[3.0]]</td>
<td>[[3.0]]</td>
<td>[[-1]]</td>
<td>[[]]</td>
</tr>
</tbody>
</table>
正如你所看到的,每个单元格都是显示为列表, i.e:
(您还可以通过运行以下代码片段找到类似的结果。)
<body>
[[1.0, 2.0], [2.0, 4.0], [8.0, 3.0], [9.0, 7.0]]
</body>
我在尝试着将其更改为类似的东西:
(您还可以通过运行以下代码片段找到类似的结果。)
.matrix {
position: relative;
}
.matrix:before, .matrix:after {
content: "";
position: absolute;
top: 0;
border: 1px solid #000;
width: 6px;
height: 100%;
}
.matrix:before {
left: -10px;
border-right: -0;
}
.matrix:after {
right: -10px;
border-left: 0;
}
<div align=center>
<table class="matrix">
<tr>
<td>1</td>
<td>2</td>
</tr>
<tr>
<td>2</td>
<td>4</td>
</tr>
<tr>
<td>8</td>
<td>3</td>
</tr>
<tr>
<td>9</td>
<td>7</td>
</tr>
</table>
</div>
谢谢。