Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
W
wendelin
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Léo-Paul Géneau
wendelin
Commits
e571a68b
Commit
e571a68b
authored
Jul 13, 2020
by
Ivan Tyagov
Browse files
Options
Browse Files
Download
Plain Diff
Machine learning
See merge request
nexedi/wendelin!55
parents
9fa9c251
fecb8e7e
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
304 additions
and
3 deletions
+304
-3
bt5/erp5_wendelin/DocumentTemplateItem/portal_components/document.erp5.DataTransformation.py
...tem/portal_components/document.erp5.DataTransformation.py
+52
-0
bt5/erp5_wendelin/DocumentTemplateItem/portal_components/document.erp5.DataTransformation.xml
...em/portal_components/document.erp5.DataTransformation.xml
+131
-0
bt5/erp5_wendelin/PortalTypeTemplateItem/portal_types/Data%20Transformation.xml
...alTypeTemplateItem/portal_types/Data%20Transformation.xml
+1
-1
bt5/erp5_wendelin/SkinTemplateItem/portal_skins/erp5_wendelin/DataTransformation_view.xml
...em/portal_skins/erp5_wendelin/DataTransformation_view.xml
+1
-0
bt5/erp5_wendelin/SkinTemplateItem/portal_skins/erp5_wendelin/DataTransformation_view/my_variation_category_list.xml
...in/DataTransformation_view/my_variation_category_list.xml
+96
-0
bt5/erp5_wendelin/TestTemplateItem/portal_components/test.erp5.testWendelin.py
...tTemplateItem/portal_components/test.erp5.testWendelin.py
+17
-1
bt5/erp5_wendelin/bt/template_document_id_list
bt5/erp5_wendelin/bt/template_document_id_list
+2
-1
product/Wendelin/__init__.py
product/Wendelin/__init__.py
+4
-0
No files found.
bt5/erp5_wendelin/DocumentTemplateItem/portal_components/document.erp5.DataTransformation.py
0 → 100644
View file @
e571a68b
# -*- coding: utf-8 -*-
##############################################################################
#
# Copyright (c) 2020 Nexedi SA and Contributors. All Rights Reserved.
# Klaus Wölfel <klaus@nexedi.com>
#
# WARNING: This program as such is intended to be used by professional
# programmers who take the whole responsability of assessing all potential
# consequences resulting from its eventual inadequacies and bugs
# End users who are looking for a ready-to-use solution with commercial
# garantees and support are strongly adviced to contract a Free Software
# Service Company
#
# This program is Free Software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
##############################################################################
from
erp5.component.document.Amount
import
Amount
from
erp5.component.document.Transformation
import
Transformation
class
DataTransformation
(
Transformation
):
"""
Contains a list of transformed data operations and the data operation used
"""
meta_type
=
'ERP5 Data Transformation'
portal_type
=
'Data Transformation'
# Use Amount implementation of *VariationCategoryList
# instead of the one VariatedMixin used by Transformation so that we can set Variation
# on Initial Product
getVariationBaseCategoryList
=
Amount
.
getVariationBaseCategoryList
getVariationBaseCategoryItemList
=
Amount
.
getVariationBaseCategoryItemList
getVariationCategoryList
=
Amount
.
getVariationCategoryList
getVariationCategoryItemList
=
Amount
.
getVariationCategoryItemList
getVariationRangeBaseCategoryList
=
Amount
.
getVariationRangeBaseCategoryList
getVariationRangeCategoryList
=
Amount
.
getVariationRangeCategoryList
getVariationRangeCategoryItemList
=
Amount
.
getVariationRangeCategoryItemList
setVariationBaseCategoryList
=
Amount
.
setVariationBaseCategoryList
setVariationCategoryList
=
Amount
.
setVariationCategoryList
_setVariationCategoryList
=
Amount
.
_setVariationCategoryList
bt5/erp5_wendelin/DocumentTemplateItem/portal_components/document.erp5.DataTransformation.xml
0 → 100644
View file @
e571a68b
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Document Component"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
DataTransformation
</string>
</value>
</item>
<item>
<key>
<string>
default_source_reference
</string>
</key>
<value>
<string>
Products.ERP5.Document.Transformation
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
document.erp5.DataTransformation
</string>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Document Component
</string>
</value>
</item>
<item>
<key>
<string>
sid
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
text_content_error_message
</string>
</key>
<value>
<tuple/>
</value>
</item>
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple/>
</value>
</item>
<item>
<key>
<string>
version
</string>
</key>
<value>
<string>
erp5
</string>
</value>
</item>
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAM=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAQ=
</string>
</persistent>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"4"
aka=
"AAAAAAAAAAQ="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_log
</string>
</key>
<value>
<list>
<dictionary>
<item>
<key>
<string>
action
</string>
</key>
<value>
<string>
validate
</string>
</value>
</item>
<item>
<key>
<string>
validation_state
</string>
</key>
<value>
<string>
validated
</string>
</value>
</item>
</dictionary>
</list>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_wendelin/PortalTypeTemplateItem/portal_types/Data%20Transformation.xml
View file @
e571a68b
...
...
@@ -53,7 +53,7 @@
</item>
<item>
<key>
<string>
type_class
</string>
</key>
<value>
<string>
Transformation
</string>
</value>
<value>
<string>
Data
Transformation
</string>
</value>
</item>
<item>
<key>
<string>
type_interface
</string>
</key>
...
...
bt5/erp5_wendelin/SkinTemplateItem/portal_skins/erp5_wendelin/DataTransformation_view.xml
View file @
e571a68b
...
...
@@ -87,6 +87,7 @@
<string>
my_title
</string>
<string>
my_reference
</string>
<string>
my_resource_title
</string>
<string>
my_variation_category_list
</string>
<string>
my_template_transformation_title_list
</string>
</list>
</value>
...
...
bt5/erp5_wendelin/SkinTemplateItem/portal_skins/erp5_wendelin/DataTransformation_view/my_variation_category_list.xml
0 → 100644
View file @
e571a68b
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"ProxyField"
module=
"Products.ERP5Form.ProxyField"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
delegated_list
</string>
</key>
<value>
<list>
<string>
title
</string>
</list>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
my_variation_category_list
</string>
</value>
</item>
<item>
<key>
<string>
message_values
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
external_validator_failed
</string>
</key>
<value>
<string>
The input failed the external validator.
</string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
overrides
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
tales
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
values
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string>
my_variation_category_list
</string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string>
TransformationTransformedResource_viewFieldLibrary
</string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string>
Click to edit the target
</string>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string>
Initial Product Variation
</string>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_wendelin/TestTemplateItem/portal_components/test.erp5.testWendelin.py
View file @
e571a68b
...
...
@@ -325,4 +325,20 @@ class Test(ERP5TypeTestCase):
self
.
assertSameSet
(
data_stream_2
.
getRecursivePredecessorValueList
(),
\
[
data_stream_1
])
self
.
assertSameSet
(
data_stream_5
.
getRecursivePredecessorValueList
(),
\
[
data_stream_4
,
data_stream_3
,
data_stream_2
,
data_stream_1
])
\ No newline at end of file
[
data_stream_4
,
data_stream_3
,
data_stream_2
,
data_stream_1
])
def
test_08_ImportSklearn
(
self
):
"""
Test import of Scikit-learn and minimal example of usage.
"""
from
sklearn.linear_model
import
LinearRegression
X
=
np
.
array
([[
1
,
1
],
[
1
,
2
],
[
2
,
2
],
[
2
,
3
]])
# y = 1 * x_0 + 2 * x_1 + 3
y
=
np
.
dot
(
X
,
np
.
array
([
1
,
2
]))
+
3
reg
=
LinearRegression
().
fit
(
X
,
y
)
predicted
=
reg
.
predict
(
np
.
array
([[
4
,
10
]]))
self
.
assertEqual
(
predicted
.
all
(),
np
.
array
([
27.
]).
all
())
\ No newline at end of file
bt5/erp5_wendelin/bt/template_document_id_list
View file @
e571a68b
...
...
@@ -4,4 +4,5 @@ document.erp5.DataArray
document.erp5.DataArrayLine
document.erp5.DataArrayLineExistenceConstraint
document.erp5.DataBucketStream
document.erp5.DataStream
\ No newline at end of file
document.erp5.DataStream
document.erp5.DataTransformation
\ No newline at end of file
product/Wendelin/__init__.py
View file @
e571a68b
...
...
@@ -57,6 +57,8 @@ sz = np.array([('2017-07-12T12:30:20',)], dtype=[('date', 'M8[s]')])
allow_type
(
type
(
sz
[
0
][
'date'
]))
allow_module
(
'sklearn'
)
allow_module
(
'sklearn.model_selection'
)
allow_module
(
'sklearn.linear_model'
)
allow_module
(
'scipy'
)
allow_module
(
'wendelin.bigarray.array_zodb'
)
...
...
@@ -76,6 +78,8 @@ allow_type(pd.Index)
allow_type
(
pd
.
core
.
groupby
.
DataFrameGroupBy
)
allow_class
(
pd
.
DataFrame
)
import
sklearn.linear_model
allow_class
(
sklearn
.
linear_model
.
LinearRegression
)
# Modify 'safetype' dict in full_write_guard function
# of RestrictedPython (closure) directly To allow
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment