Pipeline Composition
Classify Batches Pipeline
Count and Label
A batch classifier can count values that cross a threshold and map the count to a label.
Program
Play the program to choose a threshold and see the batch label change.
classify_batches_pipeline.f90
program classify_batches_pipeline_demo
implicit none
integer :: values(3)
integer :: threshold
integer :: high_count
integer :: i
character(len=6) :: label
values = [4, 8, 11]
threshold =
high_count = 0
do i = 1, 3
if (values(i) >= threshold) high_count = high_count + 1
end do
if (high_count >= 2) then
label = 'keep'
else
label = 'drop'
end if
print '(I0, 1X, A)', high_count, trim(label)
end program classify_batches_pipeline_demo
program classify_batches_pipeline_demo
implicit none
integer :: values(3)
integer :: threshold
integer :: high_count
integer :: i
character(len=6) :: label
values = [4, 8, 11]
threshold =
high_count = 0
do i = 1, 3
if (values(i) >= threshold) high_count = high_count + 1
end do
if (high_count >= 2) then
label = 'keep'
else
label = 'drop'
end if
print '(I0, 1X, A)', high_count, trim(label)
end program classify_batches_pipeline_demo
program classify_batches_pipeline_demo
implicit none
integer :: values(3)
integer :: threshold
integer :: high_count
integer :: i
character(len=6) :: label
values = [4, 8, 11]
threshold =
high_count = 0
do i = 1, 3
if (values(i) >= threshold) high_count = high_count + 1
end do
if (high_count >= 2) then
label = 'keep'
else
label = 'drop'
end if
print '(I0, 1X, A)', high_count, trim(label)
end program classify_batches_pipeline_demo
threshold
`values(i) >= threshold` decides whether a row is counted.
label
The final label is based on the accumulated count.
composition
The program separates counting from labeling.