幾天前有人指給我一個pandas.algos函數(見https://stackoverflow.com/a/17705498/2565842),我找不到任何文檔。當我在http://pandas.pydata.org/pandas-docs/dev/的熊貓搜索框中鍵入「algos」或「is_monotonic_float64」(有問題的函數)時,我沒有得到任何結果。同樣,當我問Google時,我也沒有得到任何有用的信息。熊貓算法包:在哪裏可以找到文檔或更多關於「is_monotonic_float64」的信息
我在尋找文檔的原因是我遇到了函數接受的類型的問題。我寫了這樣的兩個功能:
def is_monotonic(time_series, cols):
return time_series.loc[:,cols].apply(lambda x:
pandas.algos.is_monotonic_float64(x)[0] if is_type(x, float) else "non_numeric data",
axis=1)
def is_type(series, t):
return series.apply(lambda x: type(x) == t).all()
我在下面的數據幀
0 1 2 3 4
A t t t t t
B 0.2583974 0.3311106 0.933452 NaN 0.1908287
C 0.4400121 0.9548238 0.2953693 0.7027355 0.6149148
D 0.4049013 0.5930965 0.7073495 0.3801416 0.4931772
運行此,但隨後得到的錯誤
ValueError: ("Buffer dtype mismatch, expected 'float64_t' but got Python object"
當我在數據幀檢查類型,第一行是字符串,其他類型是'float'。我需要在這裏做一些類型轉換爲numpy.float64嗎?
這些不是公共函數並且被使用(目前僅用於索引);也就是說這些數據可以用於(比如你指出的例子)數據,只是沒有實現;爲什麼你不打開一個問題來請求列上的''is_monotonic''(很容易做到),你想做什麼? – Jeff
你可以通過一列(或多列)排序,然後在索引 – Jeff
上調用''is_monotonic''來感謝@Jeff。這可能是一個愚蠢的問題,但我將如何/在哪裏/誰發出請求? – Anne