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

Gấu trúc: Thêm 0 vào số nguyên dài biểu thị ngày

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

Tôi đang cố gắng nhập csv vào pandas. csv chứa các cột dữ liệu sau (ví dụ):

20170607155749330: (năm/tháng/ngày/giờ/phút/giây/phần mười giây/centi giây/mili giây). Vậy có 17 số đại diện cho ngày tháng.

Vấn đề tôi gặp phải là đối với tập dữ liệu cụ thể này, một số hàng có độ chính xác ngày khác nhau, ví dụ: 2017060715581995: Chỉ có 16 chữ số ở đây vì thiếu mili giây.

Điều tôi muốn làm rất đơn giản: chuyển đổi từng ngày trong mỗi hàng sao cho tôi có được 17 chữ số bằng cách thêm 0 khi thiếu một trong số chúng.

Đây là chức năng tôi đã viết cho việc này:

def chuyển đổi_value(val):
trả về ('{:0<17}'.format(val))

Vì vậy, tôi đã thử áp dụng nó cho từng hàng bằng cách tạo một cột mới như:

file_temp['Time_Transformed'] = file_temp.apply( lambda x: Convert_value(x["TIME"]) , axis =1)

Tôi đang gặp phải hai vấn đề:

  1. Đầu tiên, cột mới được tạo không phải là số nguyên mà là một loại đối tượng;
  2. Thứ hai, nó không hoạt động, 0 không được thêm vào ngày ngắn hơn.

Tôi đã thử nhiều phương pháp khác để chuyển đổi dữ liệu thô thành chuỗi nhưng chúng cũng không hoạt động.

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

tôi nghĩ bạn cầnastypestr.ljust :

df = pd.DataFrame({'A':[20170607155749330,20170607155749]})

df['new'] = df['A'].astype(str).str.ljust(17, '0').astype('int64')
print (df)
Một cái mới
0 20170607155749330 20170607155749330
1 20170607155749 20170607155749000

Đối với ngày giờ:

df['date'] = pd.to_datetime(df['A'].astype(str).str.ljust(17, '0'), format='%Y%m%d%M%S%f' )
print (df)
một cuộc hẹn hò
0 20170607155749330 2017-06-07 00:15:57.493300
1 20170607155749 2017-06-07 00:15:57.490000

等同于:

df['date'] = pd.to_datetime(df['A'], format='%Y%m%d%M%S%f')
print (df)
một cuộc hẹn hò
0 20170607155749330 2017-06-07 00:15:57.493300
1 20170607155749 2017-06-07 00:15:57.490000

Về python - Pandas: Thêm 0 vào một số nguyên dài biểu thị một ngày, 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/44437451/

25 4 0
không gian vũ trụ
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
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