我正在尝试使用滚动和应用功能来打印窗口
但我收到错误说
File "pandas/_libs/window.pyx", line 1649, in pandas._libs.window.roll_generic
TypeError: must be real number, not NoneType
Run Code Online (Sandbox Code Playgroud)
我的代码如下
def print_window(window):
print(window)
print('==================')
def example():
df = pd.read_csv('window_example.csv')
df.rolling(5).apply(print_window)
Run Code Online (Sandbox Code Playgroud)
我的数据就像
number sum mean
1 1 1
2 3 1.5
3 6 2
4 10 2.5
5 15 3
6 20 4
Run Code Online (Sandbox Code Playgroud)
我应该如何解决这个错误?我没有找到有关此错误的类似问题
谢谢 !
这种行为出现在pandas=1.0.0. apply 的函数现在预计会返回一个值来影响相应的列。
您的代码的解决方法是:
def print_window(window):
print(window)
print('==================')
return 0
def example():
df = pd.read_csv('window_example.csv')
df.rolling(5).apply(print_window)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1345 次 |
| 最近记录: |