Hướng dẫn how do you sum a column in an array in python? - làm thế nào để bạn tổng hợp một cột trong một mảng trong python?

Làm cách nào để thêm tất cả các giá trị của một cột trong một mảng python? Lý tưởng nhất là tôi muốn làm điều này mà không cần nhập bất kỳ thư viện bổ sung nào.

input_val = [[1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5]]

output_val = [3, 6, 9, 12, 15]

Tôi biết tôi điều này có thể được thực hiện trong một vòng lặp cho vòng lặp, tự hỏi liệu có một cách nào tốt hơn [như một danh sách hiểu]?

Stephen Rauch ♦

46.1K31 Huy hiệu vàng107 Huy hiệu bạc127 Huy hiệu đồng31 gold badges107 silver badges127 bronze badges

Hỏi ngày 17 tháng 4 năm 2017 lúc 21:04Apr 17, 2017 at 21:04

0

[sum[x] for x in zip[*input_val]]
9 và
input_val = [[1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5]]

print[[sum[x] for x in zip[*input_val]]]
0 có thể hoàn thành điều đó:

Code:

[sum[x] for x in zip[*input_val]]

[sum[x] for x in zip[*input_val]]
9 lấy nội dung của danh sách đầu vào và chuyển chúng sao cho mỗi phần tử của danh sách chứa được sản xuất cùng một lúc. Điều này cho phép
input_val = [[1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5]]

print[[sum[x] for x in zip[*input_val]]]
0 thấy các phần tử đầu tiên của mỗi danh sách chứa, sau đó lần lặp tiếp theo sẽ có phần tử thứ hai của mỗi danh sách, v.v.

Mã kiểm tra:

input_val = [[1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5]]

print[[sum[x] for x in zip[*input_val]]]

Results:

[3, 6, 9, 12, 15]

Đã trả lời ngày 17 tháng 4 năm 2017 lúc 21:08Apr 17, 2017 at 21:08

Stephen Rauch ♦ Stephen RauchStephen Rauch

46.1K31 Huy hiệu vàng107 Huy hiệu bạc127 Huy hiệu đồng31 gold badges107 silver badges127 bronze badges

0

Hỏi ngày 17 tháng 4 năm 2017 lúc 21:04

np.sum[input_val,axis=0]

[sum[x] for x in zip[*input_val]]
9 và
input_val = [[1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5]]

print[[sum[x] for x in zip[*input_val]]]
0 có thể hoàn thành điều đó:Apr 17, 2017 at 21:09

[sum[x] for x in zip[*input_val]]
9 lấy nội dung của danh sách đầu vào và chuyển chúng sao cho mỗi phần tử của danh sách chứa được sản xuất cùng một lúc. Điều này cho phép
input_val = [[1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5]]

print[[sum[x] for x in zip[*input_val]]]
0 thấy các phần tử đầu tiên của mỗi danh sách chứa, sau đó lần lặp tiếp theo sẽ có phần tử thứ hai của mỗi danh sách, v.v.JavNoor

Mã kiểm tra:2 silver badges11 bronze badges

2

Đã trả lời ngày 17 tháng 4 năm 2017 lúc 21:08

# In Python 3.x 
>>> list[map[sum, zip[*input_val]]]
[3, 6, 9, 12, 15]
# explicitly type-cast it to list as map returns generator expression

# In Python 2.x, explicit type-casting to list is not needed as `map` returns list
>>> map[sum, zip[*input_val]]
[3, 6, 9, 12, 15]

Stephen Rauch ♦ Stephen RauchApr 17, 2017 at 21:10

Trong trường hợp bạn quyết định sử dụng bất kỳ thư viện nào, hãy dễ dàng làm điều này:Moinuddin Quadri

Đã trả lời ngày 17 tháng 4 năm 2017 lúc 21:0912 gold badges94 silver badges121 bronze badges

Javnoorjavnoor

input_val = [[1, 2, 3, 4, 5],
         [1, 2, 3, 4, 5],
         [1, 2, 3, 4, 5]]

output_val = [sum[[i[b] for i in input_val]] for b in range[len[input_val[0]]]]

print output_val

4022 Huy hiệu bạc11 Huy hiệu đồngApr 17, 2017 at 21:12

Ajax1234Ajax1234Ajax1234

Bạn cũng có thể sử dụng

input_val = [[1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5]]

print[[sum[x] for x in zip[*input_val]]]
0 với
[sum[x] for x in zip[*input_val]]
9 trong hàm
input_val = [[1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5]]

print[[sum[x] for x in zip[*input_val]]]
5:7 gold badges58 silver badges101 bronze badges

Đã trả lời ngày 17 tháng 4 năm 2017 lúc 21:10

import numpy as np

Moinuddin Quadrimoinuddin Quadri

 arr = np.array[[[1, 2, 3, 4, 5],[1, 2, 3, 4, 5],[1, 2, 3, 4, 5]]]

45.1K12 Huy hiệu vàng94 Huy hiệu bạc121 Huy hiệu đồng

arr.sum[axis = 0]

Thử cái này:Aug 1, 2020 at 22:15

Đã trả lời ngày 17 tháng 4 năm 2017 lúc 21:12Zhannie

67.8K7 Huy hiệu vàng58 Huy hiệu bạc101 Huy hiệu đồng1 silver badge5 bronze badges

Vui lòng xây dựng mảng của bạn bằng thư viện Numpy:

[sum[i] for i in zip[*input_val]]

[sum[x] for x in zip[*input_val]]
9 và
input_val = [[1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5]]

print[[sum[x] for x in zip[*input_val]]]
0 có thể hoàn thành điều đó:Apr 17, 2017 at 21:09

[sum[x] for x in zip[*input_val]]
9 lấy nội dung của danh sách đầu vào và chuyển chúng sao cho mỗi phần tử của danh sách chứa được sản xuất cùng một lúc. Điều này cho phép
input_val = [[1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5]]

print[[sum[x] for x in zip[*input_val]]]
0 thấy các phần tử đầu tiên của mỗi danh sách chứa, sau đó lần lặp tiếp theo sẽ có phần tử thứ hai của mỗi danh sách, v.v.Alex

Mã kiểm tra:12 silver badges26 bronze badges

Đã trả lời ngày 17 tháng 4 năm 2017 lúc 21:08

[sum[x] for x in zip[*input_val]]
0

Stephen Rauch ♦ Stephen RauchApr 17, 2017 at 21:11

Trong trường hợp bạn quyết định sử dụng bất kỳ thư viện nào, hãy dễ dàng làm điều này:Pedro Lobito

Đã trả lời ngày 17 tháng 4 năm 2017 lúc 21:0930 gold badges239 silver badges259 bronze badges

Javnoorjavnoor

[sum[x] for x in zip[*input_val]]
1

4022 Huy hiệu bạc11 Huy hiệu đồngApr 17, 2017 at 21:14

Bạn cũng có thể sử dụng

input_val = [[1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5]]

print[[sum[x] for x in zip[*input_val]]]
0 với
[sum[x] for x in zip[*input_val]]
9 trong hàm
input_val = [[1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5]]

print[[sum[x] for x in zip[*input_val]]]
5:Asav Patel

Đã trả lời ngày 17 tháng 4 năm 2017 lúc 21:101 gold badge7 silver badges24 bronze badges

Moinuddin Quadrimoinuddin Quadri

45.1K12 Huy hiệu vàng94 Huy hiệu bạc121 Huy hiệu đồng

Stephen Rauch ♦ Stephen RauchApr 17, 2017 at 21:10

Trong trường hợp bạn quyết định sử dụng bất kỳ thư viện nào, hãy dễ dàng làm điều này:Prune

Đã trả lời ngày 17 tháng 4 năm 2017 lúc 21:0914 gold badges57 silver badges78 bronze badges

Javnoorjavnoor

[sum[x] for x in zip[*input_val]]
3

4022 Huy hiệu bạc11 Huy hiệu đồng

Bạn cũng có thể sử dụng

input_val = [[1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5]]

print[[sum[x] for x in zip[*input_val]]]
0 với
[sum[x] for x in zip[*input_val]]
9 trong hàm
input_val = [[1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5]]

print[[sum[x] for x in zip[*input_val]]]
5:9 gold badges61 silver badges87 bronze badges

Stephen Rauch ♦ Stephen RauchApr 17, 2017 at 21:11

Trong trường hợp bạn quyết định sử dụng bất kỳ thư viện nào, hãy dễ dàng làm điều này:LLL

Đã trả lời ngày 17 tháng 4 năm 2017 lúc 21:092 gold badges24 silver badges40 bronze badges

Javnoorjavnoor

4022 Huy hiệu bạc11 Huy hiệu đồng

[sum[x] for x in zip[*input_val]]
4

Bạn cũng có thể sử dụng

input_val = [[1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5]]

print[[sum[x] for x in zip[*input_val]]]
0 với
[sum[x] for x in zip[*input_val]]
9 trong hàm
input_val = [[1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5],
             [1, 2, 3, 4, 5]]

print[[sum[x] for x in zip[*input_val]]]
5:

[sum[x] for x in zip[*input_val]]
5

Đã trả lời ngày 17 tháng 4 năm 2017 lúc 21:10

[sum[x] for x in zip[*input_val]]
6

Moinuddin Quadrimoinuddin QuadriNov 22, 2018 at 7:30

[sum[x] for x in zip[*input_val]]
7

45.1K12 Huy hiệu vàng94 Huy hiệu bạc121 Huy hiệu đồng

Stephen Rauch ♦

46.1K31 Huy hiệu vàng107 Huy hiệu bạc127 Huy hiệu đồng31 gold badges107 silver badges127 bronze badges

Thử cái này:Jan 28, 2018 at 1:26

1

Đã trả lời ngày 17 tháng 4 năm 2017 lúc 21:12

[sum[x] for x in zip[*input_val]]
8

67.8K7 Huy hiệu vàng58 Huy hiệu bạc101 Huy hiệu đồngJun 21 at 7:40

Bài Viết Liên Quan

Chủ Đề