Tôi đang cố gắng để áp dụng một chức năng để tất cả các hàng của một DataFrame gấu trúc (trên thực tế chỉ là một cột trong DataFrame đó)Rắc rối đi qua trong lambda để áp dụng cho gấu trúc DataFrame
tôi chắc chắn rằng đây là một lỗi cú pháp nhưng tôi biết chắc chắn những gì tôi đang làm sai
df['col'].apply(lambda x, y:(x - y).total_seconds(), args=[d1], axis=1)
cột col
chứa một bó một datetime.datetime
đối tượng và và d1
là sớm nhất trong số họ. Tôi đang cố gắng để có được một cột trong tổng số giây cho mỗi hàng
EDIT tôi tiếp tục nhận được lỗi sau
TypeError: <lambda>() got an unexpected keyword argument 'axis'
Tôi không hiểu tại sao axis
được nhận được thông qua để lambda
chức năng của tôi
EDIT 2
tôi cũng đã cố gắng làm
012.def diff_dates(d1, d2):
return (d1-d2).total_seconds()
df['col'].apply(diff_dates, args=[d1], axis=1)
Và tôi nhận được lỗi tương tự
Có thể arg và trục nằm trong cùng một khung với 'lambda' đang làm gì đó không? – Zizouz212
Bạn đang cố gắng trừ một cột ngày này sang cột khác? Hoàn toàn không rõ những gì bạn thực sự muốn. Hiển thị đầu vào của bạn và những gì bạn muốn làm đầu ra – qwwqwwq
trông giống như vấn đề ưu tiên của nhà điều hành. Tôi nghĩ rằng bạn đang nói với lambda để trả lại 3-tuple. – royce3