cuốn sách gpt4 ai đã làm

Pandas hoạt động khi ô chứa danh sách

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-03 15:40:47 29 4
mua khóa gpt4 Nike

我有一个 Khung dữ liệu, trong đó một cột chứa danh sách dưới dạng nội dung ô, như sau:

nhập gấu trúc dưới dạng pd
df = pd.DataFrame({
'col_lists': [[1, 2, 3], [5]],
'col_normal': [8, 9]
})

>>> df
danh sách col_col_normal
0 [1, 2, 3] 8
1 [5] 9

tôi nghĩ đúng danh sách col_ Áp dụng một số phép biến đổi cho từng phần tử, ví dụ:

df['col_lists'] = df.apply(
hàng lambda: [ Không có nếu (phần tử % 2 == 0) phần tử khác cho phần tử trong hàng['col_lists']],
trục=1
)

>>> df
danh sách col_col_normal
0 [1, Không có, 3] 8
1 [5] 9

Đối với khung dữ liệu này, nó hoạt động như tôi mong đợi, tuy nhiên, khi tôi áp dụng cùng một mã cho các khung dữ liệu khác, tôi nhận được một kết quả lạ - đối với mỗi hàng, cột chỉ chứa phần tử đầu tiên của danh sách:

df2 = pd.DataFrame({
'col_lists': [[1, 2], [5]], # độ dài của danh sách đầu tiên ở đây nhỏ hơn
'col_normal': [8, 9]
})

df2['col_lists'] = df2.apply(
hàng lambda: [ Không có nếu (phần tử % 2 == 0) phần tử khác cho phần tử trong hàng['col_lists']],
trục=1
)

>>> df2
danh sách col_col_normal
0 1,0 8
1 5,0 9

Tôi có hai câu hỏi:

(1) Chuyện gì đang xảy ra ở đây? tại sao ở df thay vì df2 Trong trường hợp nào tôi nhận được kết quả chính xác?

(2) Cách áp dụng chính xác các phép biến đổi nhất định cho Khung dữ liệu trong danh sách?

câu trả lời hay nhất

Đầu tiên, tôi nghĩ ở gấu trúc sử dụng danh sách KHÔNG ý kiến ​​hay .

Nhưng nếu bạn thực sự cần nó, hãy thử nâng cấp pandas vì đối với tôi nó là gấu trúc 0.23.4 Hoạt động tốt trong:

df2['col_lists'] = df2.apply(
hàng lambda: [ Không có nếu (phần tử % 2 == 0) phần tử khác cho phần tử trong hàng['col_lists']],
trục=1
)

in(df2)
danh sách col_col_normal
0 [1, Không có] 8
1 [5] 9

Về python - Pandas hoạt động khi các ô chứa danh sách, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/52591372/

29 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress