回答下列问题1.arr1=[[0,0,0],[1,1,1],[2,2,2],[3,3,3]],arr2=[[1,2,3]],arr1+arr2的结果是?2.怎么使用loc 方法访问musicdata中metric列值为“Unit”的format列数据和使用iloc 方法访问musicdata中metric列值为“Unit”的format列数据?
时间: 2023-12-30 10:02:58 浏览: 49
1. `arr1` 是一个二维列表,每个子列表都有三个元素。`arr2` 是一个包含三个元素的一维列表。当它们相加时,会报错,因为它们的形状不相同。要想让它们相加,需要对它们进行转换,使它们的形状相同。例如,可以将 `arr2` 转换为一个二维列表,如下所示:
```python
arr2 = [[1,2,3]]
arr1 + arr2 # 报错
arr1 + [arr2[0]] # [[0, 0, 0], [1, 1, 1], [2, 2, 2], [3, 3, 3], [1, 2, 3]]
```
这样就可以将 `arr1` 和 `arr2` 相加得到一个新的二维列表。
2. 使用 `loc` 方法访问 `musicdata` 中 `metric` 列值为“Unit”的 `format` 列数据可以使用以下代码:
```python
musicdata.loc[musicdata['metric'] == 'Unit', 'format']
```
其中,`musicdata['metric'] == 'Unit'` 选择 `metric` 列值为“Unit”的行,`'format'` 指定要选择的列为 `format` 列。
使用 `iloc` 方法访问 `musicdata` 中 `metric` 列值为“Unit”的 `format` 列数据可以使用以下代码:
```python
musicdata.iloc[musicdata.loc[musicdata['metric'] == 'Unit'].index, musicdata.columns.get_loc('format')]
```
其中,`musicdata.loc[musicdata['metric'] == 'Unit'].index` 选择 `metric` 列值为“Unit”的行的索引,`musicdata.columns.get_loc('format')` 获取 `format` 列的位置。这样就可以选择相应的行和列,获取对应的数据。
阅读全文