回答編集履歴
2
test
CHANGED
@@ -1,12 +1,16 @@
|
|
1
1
|
[Pandas](http://pandas.pydata.org/) の rolling window function の様なモノ。
|
2
2
|
```julia
|
3
3
|
n = 3 # window size
|
4
|
+
|
5
|
+
macro sma_val(idx)
|
6
|
+
:(sma(data_frame[$(esc(idx)), :B], n=n-1)[n-1])
|
7
|
+
end
|
8
|
+
|
4
9
|
function func(idx)
|
5
|
-
sma_val() = sma(data_frame[idx, :B], n=n-1)[n-1]
|
6
10
|
dfi = @view data_frame[idx, :]
|
7
11
|
ifelse(dfi[2, :C] == "A",
|
8
|
-
dfi[3, :B] > 0.5 && sma_val() > 0.3 && last(idx),
|
12
|
+
dfi[3, :B] > 0.5 && (@sma_val(idx)) > 0.3 && last(idx),
|
9
|
-
dfi[3, :B] > 0.3 && sma_val() > 0.1 && last(idx))
|
13
|
+
dfi[3, :B] > 0.3 && (@sma_val(idx)) > 0.1 && last(idx))
|
10
14
|
end
|
11
15
|
|
12
16
|
list_folder = filter(x -> !iszero(x), [func(i:i+n-1) for i=1:nrow(data_frame)-n+1])
|
1
test
CHANGED
@@ -1,16 +1,14 @@
|
|
1
1
|
[Pandas](http://pandas.pydata.org/) の rolling window function の様なモノ。
|
2
2
|
```julia
|
3
3
|
n = 3 # window size
|
4
|
-
function fun
|
4
|
+
function func(idx)
|
5
|
-
idx = parentindices(dfi)[1]
|
6
|
-
sma_val = sma(data_frame[idx, :B], n=n-1)[n-1]
|
5
|
+
sma_val() = sma(data_frame[idx, :B], n=n-1)[n-1]
|
7
|
-
|
6
|
+
dfi = @view data_frame[idx, :]
|
8
|
-
|
7
|
+
ifelse(dfi[2, :C] == "A",
|
9
|
-
|
8
|
+
dfi[3, :B] > 0.5 && sma_val() > 0.3 && last(idx),
|
10
|
-
|
9
|
+
dfi[3, :B] > 0.3 && sma_val() > 0.1 && last(idx))
|
11
10
|
end
|
12
11
|
|
13
|
-
list_folder = filter(x -> x > 0,
|
14
|
-
|
12
|
+
list_folder = filter(x -> !iszero(x), [func(i:i+n-1) for i=1:nrow(data_frame)-n+1])
|
15
13
|
println(list_folder)
|
16
14
|
```
|