예제 #1
0
	def widget(self):
		pbox=[]

		# ファイル名とファイル内容
		self.iName_w =widgets.Text(description="トランザクション",value="",layout=Layout(width='99%'),disabled=True)
		self.iText_w =widgets.Textarea(value="",rows=5,layout=Layout(width='99%'),disabled=True)
		pbox.append(self.iName_w)
		pbox.append(self.iText_w)
		self.oPath_w =widgets.Text(description="出力パス",value="",layout=Layout(width='100%'),disabled=False)
		pbox.append(self.oPath_w)
		self.oDir_w =widgets.Text(description="出力dir名",value="",layout=widgets.Layout(width='100%'),disabled=False)
		pbox.append(self.oDir_w)

		# traID 項目
		config_t={
			"options":[],
			"title":"トランザクションID項目",
			"rows":5,
			"width":300,
			"multiSelect":False,
			"message":None
		}
		self.traID_w=selfield_w(config_t)

		# item 項目
		config_i={
			"options":[],
			"title":"アイテム項目",
			"rows":5,
			"width":300,
			"multiSelect":False,
			"message":None
		}
		self.item_w=selfield_w(config_i)

		pbox.append(widgets.HBox([self.traID_w.widget(),self.item_w.widget()]))

		# 各種しきい値
		self.minSup_w=widgets.FloatSlider(description='minSup', value=0.01, min=0.0, max=1.0, step=0.01)
		pbox.append(self.minSup_w)

		self.edgeType_w=widgets.RadioButtons(description='edge条件',options=['minConf', 'minPMI'])
		self.minConf_w=widgets.FloatSlider(description='minConf', value=0.01, min=0.0, max=1.0, step=0.01)
		self.minPMI_w=widgets.FloatSlider(description='minPMI', value=0.0, min=-1.0, max=1.0, step=0.01)
		pbox.append(widgets.HBox([self.edgeType_w,self.minConf_w,self.minPMI_w]))

		self.nodeSup_w=widgets.Checkbox( value=True, description='nodeにもminSupを適用する', disabled=False)
		pbox.append(self.nodeSup_w)

		box=widgets.VBox(pbox)
		return box
예제 #2
0
파일: kmeans_w.py 프로젝트: nysol/miningpy
	def widget(self):
		pbox=[]

		# ファイル名とファイル内容
		self.iName_w =widgets.Text(description="トランザクション",value="",layout=Layout(width='99%'),disabled=True)
		self.iText_w =widgets.Textarea(value="",rows=5,layout=Layout(width='99%'),disabled=True)
		pbox.append(self.iName_w)
		pbox.append(self.iText_w)
		self.oPath_w =widgets.Text(description="出力パス",value="",layout=Layout(width='100%'),disabled=False)
		pbox.append(self.oPath_w)
		self.oDir_w =widgets.Text(description="ディレクトリ名",value="",layout=Layout(width='100%'),disabled=False)
		pbox.append(self.oDir_w)

		# id 項目
		config_t={
			"options":[],
			"title":"サンプルID項目",
			"rows":5,
			"blank":True,
			"width":300,
			"multiSelect":False,
			"message":None
		}
		self.id_w=selfield_w(config_t)

		# 入力変数項目
		config_i={
			"options":[],
			"title":"数値説明変数",
			"rows":5,
			#"blank":True,
			"width":300,
			"multiSelect":True,
			"message":None
		}
		self.x_w=selfield_w(config_i)

		pbox.append(widgets.HBox([self.x_w.widget()]))

		self.algo_w=widgets.RadioButtons(options=['k-means'],
				value='k-means', description='algorithm:', disabled=False)
		pbox.append(self.algo_w)

		self.k_w=widgets.BoundedIntText(description='クラスタ数',value=5,min=2,style={'description_width': 'initial'})
		#print("k",self.k_w.keys)
		pbox.append(self.k_w)

		box=widgets.VBox(pbox)
		return box
예제 #3
0
    def widget(self):
        pbox = []
        # ファイル名とファイル内容
        self.iName_w = widgets.Text(description="入力ファイル",
                                    value="",
                                    layout=Layout(width='100%'),
                                    disabled=True)
        self.iText_w = widgets.Textarea(value="",
                                        rows=5,
                                        layout=Layout(width='100%'),
                                        disabled=False)
        pbox.append(self.iName_w)
        pbox.append(self.iText_w)
        self.oPath_w = widgets.Text(description="出力パス",
                                    value="",
                                    layout=Layout(width='100%'),
                                    disabled=False)
        pbox.append(self.oPath_w)
        self.oFile_w = widgets.Text(description="ファイル名",
                                    value="",
                                    layout=Layout(width='100%'),
                                    disabled=False)
        pbox.append(self.oFile_w)

        # key 項目
        config_tid = {
            "options": [],
            "title": "トランザクションID項目",
            "rows": 5,
            "width": 300,
            "multiSelect": False,
            "message": None
        }
        self.tid_w = selfield_w(config_tid)

        # item 項目
        config_item = {
            "options": [],
            "title": "アイテム項目",
            "rows": 5,
            "width": 300,
            "multiSelect": False,
            "message": None
        }
        self.item_w = selfield_w(config_item)
        pbox.append(widgets.HBox([self.tid_w.widget(), self.item_w.widget()]))

        # 集計 項目
        config_agg = {
            "options": [],
            "title": "集計項目",
            "rows": 5,
            "blank": True,
            "width": 300,
            "multiSelect": False,
            "message": None
        }
        self.agg_w = selfield_w(config_agg)

        # クラス項目
        config_klass = {
            "options": [],
            "title": "目的変数項目",
            "rows": 5,
            "blank": True,
            "width": 300,
            "multiSelect": False,
            "message": None
        }
        self.klass_w = selfield_w(config_klass)
        pbox.append(widgets.HBox([self.agg_w.widget(), self.klass_w.widget()]))

        # その他パラメータ
        self.null_w = widgets.Text(description="nullの置換値",
                                   value="0",
                                   style={'description_width': 'initial'})
        self.dummy_w = widgets.Checkbox(
            value=True,
            description='dummy化(アイテムが存在するかどうかの0/1)',
            style={'description_width': 'initial'})
        statsList = [
            "sum", "mean", "count", "ucount", "devsq", "var", "uvar", "sd",
            "usd", "USD", "cv", "min", "qtile1", "median", "qtile3", "max",
            "range", "qrange", "mode", "skew", "uskew", "kurt", "ukurt"
        ]
        self.stat_w = widgets.Dropdown(description="統計量",
                                       options=statsList,
                                       value='sum',
                                       disabled=False)
        pbox.append(widgets.VBox([self.null_w, self.dummy_w, self.stat_w]))

        box = widgets.VBox(pbox)
        return box
예제 #4
0
파일: mselstr_w.py 프로젝트: nysol/miningpy
    def widget(self):
        pbox = []
        # ファイル名とファイル内容
        self.iName_w = widgets.Text(description="入力ファイル",
                                    value="",
                                    layout=Layout(width='100%'),
                                    disabled=True)
        self.iText_w = widgets.Textarea(value="",
                                        rows=5,
                                        layout=Layout(width='100%'),
                                        disabled=True)
        pbox.append(self.iName_w)
        pbox.append(self.iText_w)
        self.oPath_w = widgets.Text(description="出力パス",
                                    value="",
                                    layout=Layout(width='100%'),
                                    disabled=False)
        pbox.append(self.oPath_w)
        self.oFile_w = widgets.Text(description="ファイル名",
                                    value="",
                                    layout=Layout(width='100%'),
                                    disabled=False)
        pbox.append(self.oFile_w)

        # key 項目
        config_k = {
            "options": [],
            "title": "key単位選択の項目",
            "rows": 5,
            "width": 300,
            "blank": True,
            "multiSelect": False,
            "message": None
        }
        self.key_w = selfield_w(config_k)

        # field 項目
        config_f = {
            "options": [],
            "title": "アイテム項目",
            "rows": 5,
            "width": 300,
            "multiSelect": False,
            "message": None
        }
        self.field_w = selfield_w(config_f)
        pbox.append(widgets.HBox([self.field_w.widget(), self.key_w.widget()]))

        # 値
        self.value_w = widgets.Text(description="値",
                                    value="",
                                    layout=Layout(width='300px'))
        search_w = widgets.Button(description="値のみで検索")
        search_w.on_click(self.search_h)
        self.result_w = widgets.Select(options=[], rows=14)
        subbox1 = widgets.VBox([self.value_w, search_w, self.result_w])

        # その他parameters
        self.head_w = widgets.Checkbox(value=False,
                                       description='先頭一致',
                                       disabled=False)
        self.tail_w = widgets.Checkbox(value=False,
                                       description='末尾一致',
                                       disabled=False)
        self.reverse_w = widgets.Checkbox(value=False,
                                          description='条件反転',
                                          disabled=False)
        subbox2 = widgets.VBox([self.head_w, self.tail_w, self.reverse_w])
        pbox.append(widgets.HBox([subbox1, subbox2]))

        box = widgets.VBox(pbox)
        return box
예제 #5
0
파일: ctree_w.py 프로젝트: nysol/miningpy
    def widget(self):
        # parameters
        pbox = []

        # 入力ファイル名とファイル内容
        self.fName_w = widgets.Text(description="入力ファイル",
                                    value="",
                                    layout=widgets.Layout(width='99%'),
                                    disabled=True)
        self.fText_w = widgets.Textarea(value="",
                                        rows=5,
                                        layout=widgets.Layout(width='99%'),
                                        disabled=True)
        pbox.append(self.fName_w)
        pbox.append(self.fText_w)
        self.oPath_w = widgets.Text(description="出力パス",
                                    value="",
                                    layout=widgets.Layout(width='100%'),
                                    disabled=False)
        pbox.append(self.oPath_w)
        self.oDir_w = widgets.Text(description="出力dir名",
                                   value="",
                                   layout=widgets.Layout(width='100%'),
                                   disabled=False)
        pbox.append(self.oDir_w)

        # id 項目
        config_id = {
            "options": [],
            "title": "サンプルID項目(指定しなくても良い)",
            "rows": 5,
            "width": 300,
            "blank": True,
            "multiSelect": False,
            "message": None
        }
        self.id_w = selfield_w(config_id)

        # 数値変数 項目
        config_n = {
            "options": [],
            "title": "数値説明変数(複数選択可)",
            "rows": 5,
            "width": 300,
            "blank": True,
            "multiSelect": True,
            "message": None
        }
        self.num_w = selfield_w(config_n)

        # cat変数 項目
        config_c = {
            "options": [],
            "title": "カテゴリ説明変数(複数選択可)",
            "rows": 5,
            "width": 300,
            "blank": True,
            "multiSelect": True,
            "message": None
        }
        self.cat_w = selfield_w(config_c)

        # y 項目
        config_y = {
            "options": [],
            "title": "目的変数",
            "rows": 5,
            "width": 300,
            "multiSelect": False,
            "message": None
        }
        self.y_w = selfield_w(config_y)
        pbox.append(widgets.HBox([self.id_w.widget(), self.y_w.widget()]))
        pbox.append(widgets.HBox([self.num_w.widget(), self.cat_w.widget()]))

        # 各種しきい値
        self.minSamplesLeaf_w = widgets.FloatSlider(description='枝刈度',
                                                    value=0.0,
                                                    min=0.0,
                                                    max=0.5,
                                                    step=0.01,
                                                    disabled=False,
                                                    orientation='horizontal')
        label = widgets.Textarea(
            rows=3,
            disabled=True,
            layout=widgets.Layout(width="65%"),
            value="""枝刈度にはリーフの最小サンプル数(min_samples_leaf)を利用する。
値は、全サンプル数に対する割合で指定する(min_samples_leaf=(0.0,0.5])。
0.0に設定すると、cross-validationでテスト誤差最小の枝刈度を自動選択する。
""")
        pbox.append(widgets.VBox([label, self.minSamplesLeaf_w]))

        box = widgets.VBox(pbox)
        return box
예제 #6
0
    def widget(self):
        pbox = []
        # ファイル名とファイル内容
        self.fName_w = widgets.Text(description="file name",
                                    value="",
                                    layout=Layout(width='100%'),
                                    disabled=True)
        self.fText_w = widgets.Textarea(value="",
                                        rows=5,
                                        layout=Layout(width='100%'),
                                        disabled=True)
        pbox.append(self.fName_w)
        pbox.append(self.fText_w)
        self.oPath_w = widgets.Text(description="出力パス",
                                    value="",
                                    layout=Layout(width='100%'),
                                    disabled=True)
        pbox.append(self.oPath_w)
        self.oFile_w = widgets.Text(description="ファイル名",
                                    value="",
                                    layout=Layout(width='100%'),
                                    disabled=False)
        pbox.append(self.oFile_w)

        # key 項目
        config_k = {
            "options": [],
            "title": "集計単位の項目",
            "rows": 5,
            "width": 300,
            "blank": True,
            "multiSelect": False,
            "message": None
        }
        self.key_w = selfield_w(config_k)

        # field 項目
        config_f = {
            "options": [],
            "title": "集計対象の項目",
            "rows": 5,
            "width": 300,
            "multiSelect": False,
            "message": None
        }
        self.field_w = selfield_w(config_f)
        pbox.append(widgets.HBox([self.field_w.widget(), self.key_w.widget()]))

        # 新項目名
        self.newfld_w = widgets.Text(description="出力項目名",
                                     value="",
                                     layout=Layout(width='300px'))
        newfldL_w = widgets.Label(value="指定しなければ集計対象項目名と同じ名前になる",
                                  disabled=True)
        pbox.append(widgets.HBox([self.newfld_w, newfldL_w]))

        # 統計量
        statsList = [
            "sum", "mean", "count", "ucount", "devsq", "var", "uvar", "sd",
            "usd", "USD", "cv", "min", "qtile1", "median", "qtile3", "max",
            "range", "qrange", "mode", "skew", "uskew", "kurt", "ukurt"
        ]
        self.stat_w = widgets.Dropdown(description="統計量",
                                       options=statsList,
                                       value='sum',
                                       disabled=False)
        pbox.append(self.stat_w)

        help_w = widgets.Textarea(value=self.help(),
                                  rows=4,
                                  layout=Layout(width='100%'),
                                  disabled=True)
        pbox.append(help_w)

        box = widgets.VBox(pbox)
        return box
예제 #7
0
	def widget(self):
		# parameters
		pbox=[]

		# 入力ファイル名とファイル内容
		self.fName_w =widgets.Text(description="入力ファイル",value="",layout=widgets.Layout(width='99%'),disabled=True)
		self.fText_w =widgets.Textarea(value="",rows=5,layout=widgets.Layout(width='99%'),disabled=True)
		pbox.append(self.fName_w)
		pbox.append(self.fText_w)
		self.oPath_w =widgets.Text(description="出力パス",value="",layout=widgets.Layout(width='100%'),disabled=False)
		pbox.append(self.oPath_w)
		self.oDir_w =widgets.Text(description="出力dir名",value="",layout=widgets.Layout(width='100%'),disabled=False)
		pbox.append(self.oDir_w)

		# id 項目
		config_id={
			"options":[],
			"title":"サンプルID項目(指定しなくても良い)",
			"rows":5,
			"width":300,
			"blank":True,
			"multiSelect":False,
			"message":None
		}
		self.id_w=selfield_w(config_id)
	
		# 数値変数 項目
		config_n={
			"options":[],
			"title":"数値説明変数(複数選択可)",
			"rows":5,
			"width":300,
			"blank":True,
			"multiSelect":True,
			"message":None
		}
		self.num_w=selfield_w(config_n)

		# cat変数 項目
		config_c={
			"options":[],
			"title":"カテゴリ説明変数(複数選択可)",
			"rows":5,
			"width":300,
			"blank":True,
			"multiSelect":True,
			"message":None
		}
		self.cat_w=selfield_w(config_c)

		# y 項目
		config_y={
			"options":[],
			"title":"目的変数項目",
			"rows":5,
			"width":300,
			"multiSelect":False,
			"message":None
		}
		self.y_w=selfield_w(config_y)
		pbox.append(widgets.HBox([self.id_w.widget(),self.y_w.widget()]))
		pbox.append(widgets.HBox([self.num_w.widget(),self.cat_w.widget()]))

		# 各種しきい値
		label=widgets.Textarea(rows=3,disabled=True,layout=widgets.Layout(width="65%"),
    value=
"""
""")
		pbox.append(widgets.VBox([label]))

		box=widgets.VBox(pbox)
		return box
예제 #8
0
	def widget(self):
		pbox=[]

		# ファイル名とファイル内容
		self.iName_w =widgets.Text(description="トランザクション",value="",layout=Layout(width='99%'),disabled=True)
		self.iText_w =widgets.Textarea(value="",rows=5,layout=Layout(width='99%'),disabled=True)
		pbox.append(self.iName_w)
		pbox.append(self.iText_w)
		self.oPath_w =widgets.Text(description="出力パス",value="",layout=Layout(width='100%'),disabled=False)
		pbox.append(self.oPath_w)
		self.oDir_w =widgets.Text(description="ディレクトリ名",value="",layout=Layout(width='100%'),disabled=False)
		pbox.append(self.oDir_w)

		# traID 項目
		config_t={
			"options":[],
			"title":"トランザクションID",
			"rows":5,
			"width":300,
			"multiSelect":False,
			"message":None
		}
		self.traID_w=selfield_w(config_t)

		# item 項目
		config_i={
			"options":[],
			"title":"アイテム項目",
			"rows":5,
			"width":300,
			"multiSelect":False,
			"message":None
		}
		self.item_w=selfield_w(config_i)

		# class 項目
		config_c={
			"options":[],
			"title":"目的変数項目",
			"rows":5,
			"blank":True,
			"width":300,
			"multiSelect":False,
			"message":None
		}
		self.class_w=selfield_w(config_c)
		pbox.append(widgets.HBox([self.traID_w.widget(),self.item_w.widget(),self.class_w.widget()]))

		# 各種しきい値
		self.type_w=widgets.RadioButtons(options=['F:頻出集合', 'C:飽和集合', 'M:極大集合'],
				value='F:頻出集合', description='type:', disabled=False)
		pbox.append(self.type_w)

		self.minSup_w=widgets.FloatSlider(description='minSup', value=0.01, min=0.0, max=1.0, step=0.01)
		self.maxSup_w=widgets.FloatSlider(description='maxSup', value=1.0, min=0.0, max=1.0, step=0.01)
		pbox.append(widgets.HBox([self.minSup_w,self.maxSup_w]))

		self.minLen_w=widgets.IntSlider(description='minLen', value=1, min=1, max=10, step=1)
		self.maxLen_w=widgets.IntSlider(description='maxLen', value=10, min=1, max=10, step=1)
		pbox.append(widgets.HBox([self.minLen_w,self.maxLen_w]))

		self.minGR_w=widgets.FloatSlider(description='minGR', value=1.2, min=1.1, max=20.0, step=0.2)
		pbox.append(self.minGR_w)

		self.usetop_w=widgets.Checkbox(value=False, description='上位top番目のsupportをminSupに再設定する', disabled=False,style={'description_width': 'initial'})
		self.top_w=widgets.IntSlider(description='topの値', value=1000, min=1, max=10000, step=1)
		pbox.append(widgets.HBox([self.usetop_w,self.top_w]))

		box=widgets.VBox(pbox)
		return box
예제 #9
0
	def widget(self):

		# ボタン系
		#exeButton_w=widgets.Button(description="スクリプト生成")
		#exeButton_w.style.button_color = 'lightgreen'
		#exeButton_w.on_click(self.exe_h)
		#buttons_w=widgets.HBox([exeButton_w])

		pbox=[]
		# ファイル名とファイル内容
		self.iName_w =widgets.Text(description="入力ファイル",value="",layout=Layout(width='100%'),disabled=True)
		self.iText_w =widgets.Textarea(value="",rows=5,layout=Layout(width='100%'),disabled=True)
		pbox.append(self.iName_w)
		pbox.append(self.iText_w)
		self.oPath_w =widgets.Text(description="出力パス",value="",layout=Layout(width='100%'),disabled=False)
		pbox.append(self.oPath_w)
		self.oFile_w =widgets.Text(description="ファイル名",value="",layout=Layout(width='100%'),disabled=False)
		pbox.append(self.oFile_w)

		# key 項目
		config_k={
			"options":[],
			"title":"key単位選択の項目",
			"rows":5,
			"width":300,
			"blank":True,
			"multiSelect":False,
			"message":None
		}
		self.key_w=selfield_w(config_k)

		# field 項目
		config_f={
			"options":[],
			"title":"数値項目",
			"rows":5,
			"width":300,
			"multiSelect":False,
			"message":None
		}
		self.field_w=selfield_w(config_f)
		pbox.append(widgets.HBox([self.field_w.widget(),self.key_w.widget()]))

		# 範囲
		self.vFr_w=widgets.Text(description="from:",value="",layout=Layout(width='300px'))
		self.vFrEq_w=widgets.Checkbox(value=True, description='以上', disabled=False)
		frBox=widgets.HBox([self.vFr_w,self.vFrEq_w])
		self.vTo_w=widgets.Text(description="to:",value="",layout=Layout(width='300px'))
		self.vToEq_w=widgets.Checkbox(value=True, description='以下', disabled=False)
		toBox=widgets.HBox([self.vTo_w,self.vToEq_w])
		pbox.append(frBox)
		pbox.append(toBox)

		# その他parameters
		self.reverse_w=widgets.Checkbox(value=False, description='条件反転', disabled=False)
		pbox.append(self.reverse_w)

		search_w=widgets.Button(description="項目統計")
		search_w.on_click(self.stats_h)
		self.result_w=widgets.Textarea(rows=4,disabled=True,layout=widgets.Layout(width='99%'))
		subbox1=widgets.VBox([search_w,self.result_w])
		pbox.append(subbox1)

		box=widgets.VBox(pbox)
		return box
예제 #10
0
파일: mjoin_w.py 프로젝트: nysol/miningpy
    def widget(self):
        pbox = []

        # ファイル名とファイル内容
        self.iName_w = widgets.Text(description="入力ファイル",
                                    value="",
                                    layout=Layout(width='100%'),
                                    disabled=True)
        self.iText_w = widgets.Textarea(value="",
                                        rows=5,
                                        layout=Layout(width='100%'),
                                        disabled=True)
        pbox.append(self.iName_w)
        pbox.append(self.iText_w)
        self.mName_w = widgets.Text(description="参照ファイル",
                                    value="",
                                    layout=Layout(width='100%'),
                                    disabled=True)
        self.mText_w = widgets.Textarea(value="",
                                        rows=5,
                                        layout=Layout(width='100%'),
                                        disabled=True)
        pbox.append(self.mName_w)
        pbox.append(self.mText_w)
        self.oPath_w = widgets.Text(description="出力パス",
                                    value="",
                                    layout=Layout(width='100%'),
                                    disabled=False)
        pbox.append(self.oPath_w)
        self.oFile_w = widgets.Text(description="ファイル名",
                                    value="",
                                    layout=Layout(width='100%'),
                                    disabled=False)
        pbox.append(self.oFile_w)

        # key 項目(入力)
        config_k = {
            "options": [],
            "title": "入力key項目",
            "rows": 5,
            "width": 300,
            "blank": False,
            "multiSelect": False,
            "message": None
        }
        self.iKey_w = selfield_w(config_k)

        # key 項目(参照)
        config_K = {
            "options": [],
            "title": "参照key項目(無選択=入力keyに同じ)",
            "rows": 5,
            "width": 300,
            "blank": True,
            "multiSelect": False,
            "message": None
        }
        self.mKey_w = selfield_w(config_K)

        # field 項目
        config_f = {
            "options": [],
            "title": "結合する項目",
            "rows": 5,
            "width": 300,
            "multiSelect": True,
            "message": None
        }
        self.field_w = selfield_w(config_f)
        pbox.append(
            widgets.HBox([
                self.iKey_w.widget(),
                self.mKey_w.widget(),
                self.field_w.widget()
            ]))

        # その他parameters
        self.iOuter_w = widgets.Checkbox(value=False,
                                         description='入力outer join',
                                         disabled=False)
        self.mOuter_w = widgets.Checkbox(value=False,
                                         description='参照outer join',
                                         disabled=False)
        subbox2 = widgets.HBox([self.iOuter_w, self.mOuter_w])
        pbox.append(subbox2)

        box = widgets.VBox(pbox)
        return box