- Siêu lớp và danh mục iOS/Objective-C
- object-c - -1001 lỗi khi NSURLSession vượt qua httpproxy và /etc/hosts
- java - Nhận địa chỉ url bằng lớp mạng
- ios - Âm thanh không phát trong thông báo đẩy
Cho một tập dữ liệu có nội dung sau:
[2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 65, 75, 85, 86, 87, 88]
Các giá trị luôn tăng (thời gian thực tế) và tôi muốn tìm khoảng cách trung bình đang chạy giữa các giá trị này. Tôi thực sự đang cố gắng xác định thời điểm dữ liệu thay đổi từ "1 lần mỗi giây" thành "1 lần mỗi 5 giây" (hoặc bất kỳ giá trị nào khác).
Tôi đang triển khai nó bằng Python, nhưng các giải pháp bằng bất kỳ ngôn ngữ nào đều được hoan nghênh.
Tôi đang tìm đầu ra từ đầu vào ví dụ trên tương tự như:
[(2, 1), (10, 5), (55, 10), (85, 1) ]
trong đó "2" biểu thị nơi khoảng cách giữa các giá trị bắt đầu từ "1" và "10" biểu thị nơi khoảng cách trở thành "5". (nó phảichính xácỞ đó, việc phát hiện phần bù sau đó một bước cũng không thành vấn đề. )
Tôi đang tìm kiếm khi khoảng cách trung bình giữa các giá trị thay đổi. Tôi nhận thấy sẽ có sự cân bằng giữa độ ổn định của thuật toán và độ nhạy cảm với những thay đổi đầu vào.
(Nhân tiện,gấu trúc hoặc NumPy Nó có hữu ích không? )
câu trả lời hay nhất
Bạn có thể sử dụng numpy hoặc pandas ("phiên bản gấu trúc") như thế này:
Trong [256]: s = pd.Series([2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 20, 25, 30, 35,
40, 45, 50, 55, 65, 75, 85, 86, 87, 88])
Trong [257]: df = pd.DataFrame({'time': s,
'time_diff': s.diff().shift(-1)}).set_index('time')
Trong [258]: df[df.time_diff - df.time_diff.shift(1) != 0].dropna()
Ra [258]:
thời gian_khác biệt
time
2 1
10 5
55 10
85 1
Nếu bạn chỉ muốn xem lần xuất hiện đầu tiên của mỗi bước thời gian, bạn cũng có thể sử dụng:
Trong [259]: df.drop_duplicates().dropna() # set take_last=True nếu bạn muốn cái cuối cùng
Ra [259]:
thời gian_khác biệt
time
2 1
10 5
55 10
Nhưng với gấu trúc bạn thường sử dụng Chỉ số ngày giờ
Để sử dụng chức năng chuỗi thời gian tích hợp:
Trong [44]: a = [2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 20, 25, 30, 35,
40, 45, 50, 55, 65, 75, 85, 86, 87, 88]
Trong [45]: start_time = datetime.datetime.now()
Trong [46]: time = [start_time + datetime.timedelta(seconds=int(x)) for x in a]
Trong [47]: idx = pd.DatetimeIndex(times)
Trong [48]: df = pd.DataFrame({'data1': np.random.Rand(idx.size),
'data2': np.random.Rand(idx.size)},
chỉ mục=idx)
Trong [49]: df.resample('5S') # lấy mẫu lại thành 5 giây
Ra [49]:
dữ liệu1 dữ liệu2
28-11-2012 07:36:35 0,417282 0,477837
28-11-2012 07:36:40 0,536367 0,451494
28-11-2012 07:36:45 0.902018 0.457873
28-11-2012 07:36:50 0,452151 0,625526
28-11-2012 07:36:55 0,816028 0,170319
28-11-2012 07:37:00 0,169264 0,723092
28-11-2012 07:37:05 0,809279 0,794459
28-11-2012 07:37:10 0,652836 0,615056
28-11-2012 07:37:15 0,508318 0,147178
28-11-2012 07:37:20 0,261157 0,509014
28-11-2012 07:37:25 0,609685 0,324375
28-11-2012 07:37:30 NaN NaN
28-11-2012 07:37:35 0,736370 0,551477
28-11-2012 07:37:40 NaN NaN
28-11-2012 07:37:45 0,839960 0,118619
28-11-2012 07:37:50 NaN NaN
28-11-2012 07:37:55 0,697292 0,394946
28-11-2012 07:38:00 0,351824 0,420454
Theo tôi, Pandas cho đến nay là thư viện tốt nhất hiện có trong hệ sinh thái Python khi làm việc với chuỗi thời gian. Không chắc bạn thực sự muốn làm gì, nhưng tôi sẽ thử gấu trúc.
Chạy trung bình/tần số cho dữ liệu chuỗi thời gian? , 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/13580875/
Tôi đang đọc tài liệu Python để thực sự tìm hiểu về ngôn ngữ Python và tìm thấy các hàm lọc và bản đồ. Tôi đã từng sử dụng các bộ lọc trước đây nhưng chưa bao giờ sử dụng bản đồ, mặc dù tôi đã thấy điều này trong nhiều câu hỏi Python khác nhau trên SO
Câu hỏi này đã nhắc tôi khi tôi cố in thứ tự cấp độ của BST. Đây là Trình tự đặt hàng trước: 4, 1, 2, 3, 5, 6, 7, 8 Trình tự đặt hàng trước: 1, 2
Mã của tôi báo lỗi trên dòng đầu tiên của main(sequence test;) cho biết rằng đó là tham chiếu không xác định tới dãy::sequence(). Tôi không thể thay đổi mã trong main. Có ai biết làm thế nào tôi có thể
Điều này có thể đơn giản, nhưng tôi không thể tìm thấy bất cứ điều gì về nó trong các hướng dẫn về latex thông thường. Trong câu này: {\em xin chào\/} Mục đích của "\/" là gì? Câu trả lời hay nhất Đây được gọi là sửa chữ nghiêng. Mục đích của nó là đảm bảo khoảng cách thích hợp sau văn bản in nghiêng.
Khi tôi xóa tất cả các bản ghi khỏi bảng Postgresql và sau đó thử đặt lại trình tự để bắt đầu bản ghi mới với số 1 khi chèn, tôi nhận được các kết quả khác nhau: SELECT setval('tblname_id_seq', (SELE
Trong phiên bản 10.0.3, MariaDB đã giới thiệu một công cụ lưu trữ có tên là Sequence. Đặc biệt của nó tạo ra một chuỗi các số nguyên cho hoạt động và sau đó kết thúc. Chuỗi chứa các số nguyên dương, được sắp xếp theo thứ tự giảm dần hoặc tăng dần, sử dụng các giá trị bắt đầu, kết thúc và tăng dần. Nó không được phép trong nhiều truy vấn
Cách lấy dãy số cho trước trong Groovy, ví dụ: def number = 169 // cần một phương thức trong Groovy để tìm số liên tiếp
Về cơ bản, nếu đây là .NET, nó sẽ trông như thế này: ISomething { string A { get; } int B { get; } var somethings = new List
Nói phần mã sau (cùng một khối): A <= 1 A <= 2 Biến A có luôn được gán giá trị 2 không? Hoặc một điều kiện chủng tộc sẽ xảy ra và chỉ định 1 hoặc 2? Sự hiểu biết của tôi về phép gán không chặn là biến A được phân bổ trong tương lai bằng phần cứng, vì vậy nó có thể
Khi chạy thiết lập WiX, tôi đang tìm danh sách các hành động và thứ tự của chúng. Bằng cách nào đó trang web chính thức dường như không cung cấp bất kỳ thông tin nào. Vấn đề cơ bản là tôi muốn lên lịch chính xác cho các hành động tùy chỉnh của mình. Thông thường tôi cần đăng ký DLL bằng regsvr32.exe và điều này chỉ hoạt động
Người mới bắt đầu F # ở đây, tôi muốn tạo một loại là một chuỗi của một loại (sự kiện) cụ thể khác có ít nhất một phần tử. Bất kỳ yếu tố nào khác có thể được thêm vào bất kỳ lúc nào sau đó. Thông thường trong C# tôi sẽ tạo một Danh sách có chế độ riêng tư và công khai
Là một phần của quá trình xây dựng và phát triển cơ sở dữ liệu, tôi đang cố gắng tạo một tập lệnh sẽ xóa tất cả các bảng và trình tự cho người dùng. Tôi không muốn tạo lại người dùng vì điều đó sẽ yêu cầu nhiều quyền hơn mức cho phép. Tập lệnh của tôi tạo một thủ tục để xóa bảng/chuỗi, thực thi thủ tục đó, sau đó
Tôi muốn khôi phục chuỗi ngày giữa ngày đầu tiên của hai vectơ và ngày thứ hai của cùng một vectơ,.... Dưới đây là ví dụ: date1 = as.Date(c('2015-10-01', '2015 -03-27', '2015-0
Câu hỏi này đã có câu trả lời: sql ORDER BY nhiều giá trị theo thứ tự cụ thể? (12 câu trả lời) Đã đóng 9 năm trước. Tôi có một câu lệnh sql và tôi muốn ĐẶT HÀNG
Tôi muốn khôi phục chuỗi ngày giữa ngày đầu tiên của hai vectơ và ngày thứ hai của cùng một vectơ,.... Dưới đây là ví dụ: date1 = as.Date(c('2015-10-01', '2015 -03-27', '2015-0
Khi viết mã bằng java, tôi cần chia chuỗi bằng "],[". Dưới đây là mã của tôi. thử (Trình đọc BufferedReader = BufferedReader mới(InputStreamR mới
Câu hỏi này đã có câu trả lời: Câu hỏi Project Euler 14 (Vấn đề Collatz) (8 câu trả lời) Đã đóng 9 năm trước. Tôi đang cố gắng tìm dãy số Collatz. những điều sau đây
Tôi có một hàm thông thường process_letter_location(const char& c, string &word). Trong phần chính của tôi, tôi khai báo một loạt các biến chuỗi như thế này: string s
Tôi cần tìm chuỗi domino dài nhất, với một bộ gồm 12 quân domino được chọn ngẫu nhiên. Tôi đã tạo đệ quy tất cả các khả năng của quân domino (91 khả năng sử dụng các mệnh giá từ 0 đến 12). Dominoes bao gồm một khối "gạch blo"
Tôi có cấu trúc dữ liệu Seq này, kế thừa vectơ lớp nhưng có một số chức năng bổ sung. Sử dụng cấu trúc dữ liệu này Seq Tôi có cấu trúc dữ liệu được xác định trước này: typedef Seq > MxInt2d Bây giờ tôi muốn một cấu trúc chứa nhiều Mx;
Tôi là một lập trình viên xuất sắc, rất giỏi!