Tôi có dữ liệu định kỳ với chỉ số là một số điểm nổi như vậy:Tính qua (đánh chặn) điểm của một dòng hoặc DataFrame
time = [0, 0.1, 0.21, 0.31, 0.40, 0.49, 0.51, 0.6, 0.71, 0.82, 0.93]
voltage = [1, -1, 1.1, -0.9, 1, -1, 0.9,-1.2, 0.95, -1.1, 1.11]
df = DataFrame(data=voltage, index=time, columns=['voltage'])
df.plot(marker='o')
Tôi muốn tạo một hàm cross(df, y_val, direction='rise' | 'fall' | 'cross')
mà trả về một mảng các số lần (chỉ mục) với tất cả các điểm nội suy nơi các giá trị điện áp bằng y_val. Đối với 'tăng' chỉ các giá trị có độ dốc dương được trả về; cho 'fall' chỉ các giá trị có độ dốc âm được giữ lại; cho 'chéo' cả hai đều được trả lại. Vì vậy, nếu y_val = 0 và hướng = 'chéo' thì một mảng có 10 giá trị sẽ được trả về với giá trị X của điểm giao nhau (điểm đầu tiên là khoảng 0,025).
Tôi đã nghĩ rằng điều này có thể được thực hiện với một trình lặp nhưng đã tự hỏi nếu có cách nào tốt hơn để làm điều này.
Cảm ơn. Tôi yêu Pandas và cộng đồng Pandas.
btw, bạn có thể đã tình cờ gặp lỗi trong việc lập kế hoạch gấu trúc. Tôi tin rằng việc vượt qua đầu tiên nên được khoảng 0,05, dựa trên dữ liệu, nhưng các nhãn không xếp hàng, làm cho nó xuất hiện để vượt qua tại 0,025. (gấu trúc 0.7.3) – Garrett