假设我的矩阵有列名为1到100的100列数据,我想删去列名大于50小于60的部分,使剩下其他的数据合成一个新的矩阵,请问有哪些方法可以实习,请分别给出相应方法的代码,并解释各代码的组成以及作用
时间: 2024-02-25 13:54:26 浏览: 90
有多种方法可以实现这个目标,以下是其中两种方法的代码及解释:
方法一:使用 Pandas 库中的 drop() 函数
```python
import pandas as pd
# 创建一个 10 行 100 列的随机矩阵
matrix = pd.DataFrame(data = np.random.randn(10, 100), columns = range(1, 101))
# 使用 drop() 函数删除列名大于 50 小于 60 的部分
new_matrix = matrix.drop(columns = range(51, 60))
# 输出新的矩阵
print(new_matrix)
```
解释:首先导入 pandas 库,并创建一个 10 行 100 列的随机矩阵 matrix。然后使用 drop() 函数删除列名大于 50 小于 60 的部分,得到新的矩阵 new_matrix。最后输出新的矩阵。
方法二:使用 NumPy 库中的 delete() 函数
```python
import numpy as np
# 创建一个 10 行 100 列的随机矩阵
matrix = np.random.randn(10, 100)
# 使用 delete() 函数删除列名大于 50 小于 60 的部分
new_matrix = np.delete(matrix, range(50, 60), axis = 1)
# 输出新的矩阵
print(new_matrix)
```
解释:首先导入 numpy 库,并创建一个 10 行 100 列的随机矩阵 matrix。然后使用 delete() 函数删除列名大于 50 小于 60 的部分,得到新的矩阵 new_matrix。最后输出新的矩阵。其中,axis = 1 表示删除列,axis = 0 表示删除行。
阅读全文