πŸ”„ Как ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ строки ΠΈ столбцы мСстами Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅? 🐍

Как ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ строки ΠΈ столбцы мСстами Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅?

Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ строки ΠΈ столбцы мСстами Π² Python, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ zip ΠΈ список списков. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:


# Π˜ΡΡ…ΠΎΠ΄Π½Π°Ρ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

# МСняСм строки ΠΈ столбцы мСстами
transposed = list(map(list, zip(*matrix)))

# Π’Ρ‹Π²ΠΎΠ΄ΠΈΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚
for row in transposed:
    print(row)

Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ zip, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ, ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‰ΠΈΠ΅ элСмСнты ΠΈΠ· ΠΊΠ°ΠΆΠ΄ΠΎΠΉ строки ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ соотвСтствСнно. Π—Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ map, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π² списки. ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠΈΠ΅ΡΡ списки ΡΠ²Π»ΡΡŽΡ‚ΡΡ транспонированной ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ΠΉ.

Для Π΄Π°Π½Π½ΠΎΠΉ исходной ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹:

1 2 3
4 5 6
7 8 9

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ транспонированная ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°:

1 4 7
2 5 8
3 6 9

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π²Ρ‹ помСняли строки ΠΈ столбцы мСстами Π² Python.

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

Как ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ строки ΠΈ столбцы мСстами Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅

ΠŸΡ€ΠΈΠ²Π΅Ρ‚ Π΄Ρ€ΡƒΠ·ΡŒΡ! БСгодня ΠΌΡ‹ с Π³ΠΎΡ€Π΄ΠΎΡΡ‚ΡŒΡŽ прСдставляСм Π²Π°ΠΌ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΡƒΡŽ ΡΡ‚Π°Ρ‚ΡŒΡŽ, которая ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚, ΠΊΠ°ΠΊ Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ строки ΠΈ столбцы мСстами Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅. Π­Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ΅ ΡƒΠΌΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Π²Π°ΠΌ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… ситуациях, особСнно ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. Π”Π°Π²Π°ΠΉΡ‚Π΅ Π½Π°Ρ‡Π½Π΅ΠΌ!

МСняСм строки ΠΈ столбцы Π² ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅

Π’ ΠΏΠΈΡ‚ΠΎΠ½Π΅ сущСствуСт нСсколько способов ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ строки ΠΈ столбцы мСстами Π² ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅. ΠœΡ‹ рассмотрим Π΄Π²Π° ΠΈΠ· Π½ΠΈΡ… - с использованиСм NumPy ΠΈ Π±Π΅Π· Π½Π΅Π³ΠΎ.

Б использованиСм NumPy

NumPy - это Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с массивами ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅. Она прСдоставляСт ΠΌΠΎΡ‰Π½Ρ‹Π΅ инструмСнты для выполнСния Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ. Для мСняния строк ΠΈ столбцов мСстами Π² ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ с использованиСм NumPy ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ transpose.

import numpy as np

# Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹
matrix = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])

# МСняСм строки ΠΈ столбцы мСстами с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ transpose
transposed_matrix = np.transpose(matrix)

# Π’Ρ‹Π²ΠΎΠ΄ΠΈΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚
print(transposed_matrix)

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ создаСм ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 3x3 ΠΈ Π·Π°Ρ‚Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ transpose для помСщСния строк ΠΈ столбцов Π² Π½ΠΎΠ²Ρ‹Π΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выводится Π½Π° экран.

Π‘Π΅Π· использования NumPy

Если Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ NumPy, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΌΠ΅Π½ΡΡ‚ΡŒ строки ΠΈ столбцы мСстами Π² ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ списков ΠΈ Ρ†ΠΈΠΊΠ»ΠΎΠ². Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π°:

# Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

# МСняСм строки ΠΈ столбцы мСстами
transposed_matrix = [[matrix[j][i] for j in range(len(matrix))] for i in range(len(matrix[0]))]

# Π’Ρ‹Π²ΠΎΠ΄ΠΈΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚
print(transposed_matrix)

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ списки ΠΈ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ Ρ†ΠΈΠΊΠ»Ρ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ строки ΠΈ столбцы мСстами Π² ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выводится Π½Π° экран.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрСли Π΄Π²Π° способа ΠΌΠ΅Π½ΡΡ‚ΡŒ строки ΠΈ столбцы мСстами Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅ - с использованиСм NumPy ΠΈ Π±Π΅Π· Π½Π΅Π³ΠΎ. NumPy прСдоставляСт Π±ΠΎΠ»Π΅Π΅ простой ΠΈ эффСктивный способ выполнСния этой Π·Π°Π΄Π°Ρ‡ΠΈ, особСнно ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с большими ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ ΠΈ массивами Π΄Π°Π½Π½Ρ‹Ρ…. Однако, Ссли Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ встроСнныС срСдства ΠΏΠΈΡ‚ΠΎΠ½Π°, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ списки ΠΈ Ρ†ΠΈΠΊΠ»Ρ‹.

ΠœΡ‹ надССмся, Ρ‡Ρ‚ΠΎ эта ΡΡ‚Π°Ρ‚ΡŒΡ Π±Ρ‹Π»Π° ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ для вас ΠΈ ΠΏΠΎΠΌΠΎΠ³Π»Π° Π²Π°ΠΌ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ строки ΠΈ столбцы мСстами Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅. НС ΡΡ‚Π΅ΡΠ½ΡΠΉΡ‚Π΅ΡΡŒ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ с ΠΊΠΎΠ΄ΠΎΠΌ ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ свои собствСнныС Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. Π–Π΅Π»Π°Π΅ΠΌ Π²Π°ΠΌ успСхов Π² вашСй программистской ΠΊΠ°Ρ€ΡŒΠ΅Ρ€Π΅!

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

Pandas Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ β„–4. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ со столбцами DataFrame

9 CΡ‚Ρ€ΠΎΠΊΠΈ ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π°Π΄ Π½ΠΈΠΌΠΈ Python

Π£Ρ€ΠΎΠΊ 10 Π‘Ρ‚Ρ€ΠΎΠΊΠΈ: индСксы ΠΈ срСзы Python

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

Как Π² Python ΠΏΡ€ΠΈΠ±Π°Π²ΠΈΡ‚ΡŒ число ΠΊ элСмСнту списка? πŸ“ˆ

πŸ”Ž Как ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ or Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅? 🐍

Как ΡΠ²ΡΠ·Π°Ρ‚ΡŒ список с ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅: простой ΠΈ эффСктивный способ! πŸ”—πŸ“

πŸ”„ Как ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ строки ΠΈ столбцы мСстами Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅? 🐍

β€œΠšΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π²ΠΈΠΊΡ‚ΠΎΡ€ΠΈΠ½Ρƒ Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅: 5 простых ΡˆΠ°Π³ΠΎΠ²β€

πŸ“š Как ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ dataframe Π² python: пошаговоС руководство

πŸ“Š Как ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΡ€ΡƒΠ³ΠΎΠ²ΠΎΠΉ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅? Π¨Π°Π³ Π·Π° шагом руководство πŸ“ˆ