Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
SaQC
Manage
Activity
Members
Labels
Plan
Issues
36
Issue boards
Milestones
Wiki
Code
Merge requests
8
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container Registry
Model registry
Operate
Environments
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
rdm-software
SaQC
Commits
c96293fd
Commit
c96293fd
authored
5 years ago
by
David Schäfer
Browse files
Options
Downloads
Patches
Plain Diff
removed the getFlags method from the flagger inetrface
parent
e2fb79ab
No related branches found
Branches containing commit
No related tags found
Tags containing commit
No related merge requests found
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
core.py
+4
-4
4 additions, 4 deletions
core.py
flagger/baseflagger.py
+4
-8
4 additions, 8 deletions
flagger/baseflagger.py
flagger/dmpflagger.py
+4
-15
4 additions, 15 deletions
flagger/dmpflagger.py
with
12 additions
and
27 deletions
core.py
+
4
−
4
View file @
c96293fd
...
@@ -99,8 +99,8 @@ def runner(meta, flagger, data, flags=None, nodata=np.nan):
...
@@ -99,8 +99,8 @@ def runner(meta, flagger, data, flags=None, nodata=np.nan):
raise
NameError
(
raise
NameError
(
f
"
function name
{
func_name
}
is not definied (variable
'
{
varname
}
,
'
line:
{
idx
+
1
}
)
"
)
f
"
function name
{
func_name
}
is not definied (variable
'
{
varname
}
,
'
line:
{
idx
+
1
}
)
"
)
old
=
flagger
.
get
Flag
s
(
fchunk
[
varname
])
old
=
flagger
.
is
Flag
ged
(
fchunk
[
varname
])
new
=
flagger
.
get
Flag
s
(
ffchunk
[
varname
])
new
=
flagger
.
is
Flag
ged
(
ffchunk
[
varname
])
mask
=
old
!=
new
mask
=
old
!=
new
# flag a timespan after the condition is met
# flag a timespan after the condition is met
...
@@ -258,7 +258,7 @@ def readData(fname, index_col, nans):
...
@@ -258,7 +258,7 @@ def readData(fname, index_col, nans):
if
__name__
==
"
__main__
"
:
if
__name__
==
"
__main__
"
:
from
flagger
import
Positional
Flagger
from
flagger
import
Dmp
Flagger
datafname
=
"
resources/data.csv
"
datafname
=
"
resources/data.csv
"
metafname
=
"
resources/meta.csv
"
metafname
=
"
resources/meta.csv
"
...
@@ -267,5 +267,5 @@ if __name__ == "__main__":
...
@@ -267,5 +267,5 @@ if __name__ == "__main__":
nans
=
[
"
-9999
"
,
"
-9999.0
"
])
nans
=
[
"
-9999
"
,
"
-9999.0
"
])
meta
=
prepareMeta
(
pd
.
read_csv
(
metafname
),
data
)
meta
=
prepareMeta
(
pd
.
read_csv
(
metafname
),
data
)
flagger
=
Positional
Flagger
()
flagger
=
Dmp
Flagger
()
pdata
,
pflags
=
runner
(
meta
,
flagger
,
data
)
pdata
,
pflags
=
runner
(
meta
,
flagger
,
data
)
This diff is collapsed.
Click to expand it.
flagger/baseflagger.py
+
4
−
8
View file @
c96293fd
...
@@ -44,7 +44,7 @@ class BaseFlagger:
...
@@ -44,7 +44,7 @@ class BaseFlagger:
if
flag
is
None
:
if
flag
is
None
:
flag
=
self
.
flags
.
max
()
flag
=
self
.
flags
.
max
()
else
:
else
:
self
.
_check
_f
lag
(
flag
)
self
.
_check
F
lag
(
flag
)
flags
=
flags
.
copy
()
flags
=
flags
.
copy
()
flags
[
flags
<
flag
]
=
flag
flags
[
flags
<
flag
]
=
flag
return
flags
.
values
return
flags
.
values
...
@@ -57,14 +57,10 @@ class BaseFlagger:
...
@@ -57,14 +57,10 @@ class BaseFlagger:
def
isFlagged
(
self
,
flags
:
ArrayLike
,
flag
:
T
=
None
)
->
ArrayLike
:
def
isFlagged
(
self
,
flags
:
ArrayLike
,
flag
:
T
=
None
)
->
ArrayLike
:
if
flag
is
None
:
if
flag
is
None
:
return
pd
.
notnull
(
flags
)
&
(
flags
>
self
.
flags
[
0
])
return
pd
.
notnull
(
flags
)
&
(
flags
>
self
.
flags
[
0
])
else
:
self
.
_checkFlag
(
flag
)
self
.
_check_flag
(
flag
)
return
flags
==
flag
return
flags
>=
flag
def
getFlags
(
self
,
flags
:
ArrayLike
):
return
flags
def
_check
_f
lag
(
self
,
flag
):
def
_check
F
lag
(
self
,
flag
):
if
flag
not
in
self
.
flags
:
if
flag
not
in
self
.
flags
:
raise
ValueError
(
f
"
Invalid flag
'
{
flag
}
'
.
"
raise
ValueError
(
f
"
Invalid flag
'
{
flag
}
'
.
"
f
"
Possible choices are
{
list
(
self
.
flags
.
categories
)[
1
:
]
}
"
)
f
"
Possible choices are
{
list
(
self
.
flags
.
categories
)[
1
:
]
}
"
)
...
...
This diff is collapsed.
Click to expand it.
flagger/dmpflagger.py
+
4
−
15
View file @
c96293fd
...
@@ -46,7 +46,7 @@ class DmpFlagger(BaseFlagger):
...
@@ -46,7 +46,7 @@ class DmpFlagger(BaseFlagger):
if
flag
is
None
:
if
flag
is
None
:
flag
=
self
.
flags
.
max
()
flag
=
self
.
flags
.
max
()
else
:
else
:
self
.
_check
_f
lag
(
flag
)
self
.
_check
F
lag
(
flag
)
flags
=
self
.
_reduceColumns
(
flags
)
flags
=
self
.
_reduceColumns
(
flags
)
mask
=
flags
[
FlagFields
.
FLAG
]
<
flag
mask
=
flags
[
FlagFields
.
FLAG
]
<
flag
...
@@ -55,20 +55,9 @@ class DmpFlagger(BaseFlagger):
...
@@ -55,20 +55,9 @@ class DmpFlagger(BaseFlagger):
return
flags
.
values
return
flags
.
values
def
isFlagged
(
self
,
flags
,
flag
=
None
):
def
isFlagged
(
self
,
flags
,
flag
=
None
):
f
=
self
.
getFlags
(
flags
)
flags
=
self
.
_reduceColumns
(
flags
)
return
super
().
isFlagged
(
f
,
flag
)
flagcol
=
flags
.
loc
[:,
FlagFields
.
FLAG
].
squeeze
()
return
super
().
isFlagged
(
flagcol
,
flag
)
def
getFlags
(
self
,
flags
):
if
isinstance
(
flags
,
pd
.
Series
):
f
=
flags
elif
isinstance
(
flags
,
pd
.
DataFrame
):
if
isinstance
(
flags
.
columns
,
pd
.
MultiIndex
):
f
=
flags
.
xs
(
FlagFields
.
FLAG
,
level
=
ColumnLevels
.
FLAGS
,
axis
=
1
)
else
:
f
=
flags
.
loc
[:,
FlagFields
.
FLAG
]
else
:
raise
TypeError
return
f
.
squeeze
()
def
_reduceColumns
(
self
,
flags
):
def
_reduceColumns
(
self
,
flags
):
flags
=
flags
.
copy
()
flags
=
flags
.
copy
()
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment