python 数组转置_python 矩阵

python 数组转置_python 矩阵在 Python 中 转置一个矩阵或列表可以通过多种方法实现 以下是几种常见的方法 1 使用双重循环 pythonarr 1 2 3 4 5 6 7 8 9 arr2 for i in range len arr temp for j in range len arr temp append arr j i arr2

在Python中,转置一个矩阵或列表可以通过多种方法实现,以下是几种常见的方法:

1. 使用双重循环:

 arr = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] arr2 = [] for i in range(len(arr)): temp = [] for j in range(len(arr)): temp.append(arr[j][i]) arr2.append(temp) print(arr2) 输出:[[1, 4, 7], [2, 5, 8], [3, 6, 9]] 

2. 使用列表表达式(列表推导式):

 arr = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] arr2 = [[arr[j][i] for j in range(len(arr))] for i in range(len(arr))] print(arr2) 输出:[[1, 4, 7], [2, 5, 8], [3, 6, 9]] 

3. 使用zip函数:

 def transpose(matrix): return [list(row) for row in zip(*matrix)] matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] transposed_matrix = transpose(matrix) print(transposed_matrix) 输出:[[1, 4, 7], [2, 5, 8], [3, 6, 9]] 

4. 使用numpy库的transpose函数或T属性:

 import numpy as np matrix = np.array([[1, 2, 3], [4, 5, 6]]) transposed_matrix = np.transpose(matrix) print(transposed_matrix) 输出:[[1 4] [2 5] [3 6]] 或者使用T属性 transposed_matrix = matrix.T print(transposed_matrix) 输出:[[1 4] [2 5] [3 6]] 

5. 使用pandas库的.T属性(适用于数据框):

 import pandas as pd data = {'姓名': ['小明', '小红', '小刚'], '语文成绩': [80, 90, 85], '数学成绩': [90, 85, 95]} df = pd.DataFrame(data) df_T = df.T print(df_T) 输出:姓名 小明 小红 小刚 语文成绩 80 90 85 数学成绩 90 85 95 

以上方法都可以实现矩阵或列表的转置,具体选择哪种方法取决于你的使用场景和个人偏好

编程小号
上一篇 2025-05-18 11:36
下一篇 2025-05-18 11:28

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://sigusoft.com/bj/82590.html