|
|
第1行: |
第1行: |
| 1
| | -- Module:NavplateSMWRow |
| {{#ask:[[Category:数据处理|+depth=2]]|[[DataPros Lv1 Cat::+]]|sep= }}
| | local p = {} |
| 2
| | local mw = require('mw') |
| {{#ask:[[DataPros Lv1 Cat::数据输入]]|sep= }}
| |
| 3
| |
| {{#ask:[[Category:数据处理|+depth=2]] [[DataPros Lv1 Cat::数据输入]]|sep= }} | |
| 4
| |
| {{#ask:[[Category:数据处理|+depth=2]] [[DataPros Lv1 Cat::数据输入]]|sep= }}
| |
|
| |
|
| '''''查找其他类别的节点,请参考以下列表'''''
| | p.cache = {} -- 初始化缓存 |
| <div class="template-navplate mw-collapsible mw-collapsed" id="navplate-节点">
| | |
| <div class="template-navplate__header mw-collapsible-toggle">
| | function p.navplateSmwRow(frame) |
| <div class="citizen-ui-icon mw-ui-icon-wikimedia-collapse"></div>
| | local args = frame:getParent().args |
| <div class="template-navplate__headerContent">
| | local categoryName = args[1] |
| <div class="template-navplate__subtitle">列表</div>
| | local property = args[2] |
| <div class="template-navplate__title">数据处理节点</div>
| | local text = args[3] |
| </div>
| | local icon = args[4] |
| </div>
| | |
| <div class="template-navplate__content mw-collapsible-content">
| | -- 使用缓存结果,减少查询 |
| <div class="template-navplate__groupheader">数据输入</div>
| | local cacheKey = categoryName .. (property or '') .. (text or '') |
| {{Navplate SMW Row2|数据处理|DataPros Lv1 Cat::数据输入|[[数据输入]]|Data-Input.svg}}
| | if p.cache[cacheKey] then |
| <div class="template-navplate__groupheader">变量处理</div>
| | return p.cache[cacheKey] |
| {{Navplate SMW Row2|数据处理|DataPros Lv1 Cat::变量处理|[[变量处理]]|Variable-Name-Manipulation.svg}}
| | end |
| <div class="template-navplate__groupheader">行列处理</div>
| | |
| {{Navplate SMW Row2|数据处理|DataPros Lv1 Cat::行处理|[[行处理]]|Row-Manipulation.svg}}
| | -- 构建查询 |
| {{Navplate SMW Row2|数据处理|DataPros Lv1 Cat::列处理|[[列处理]]|Column-Manipulation.svg}}
| | local query = '[[Category:' .. mw.text.encode(categoryName) .. ']]' |
| <div class="template-navplate__groupheader">矩阵处理</div>
| | if property and property ~= '' then |
| {{Navplate SMW Row2|数据处理|DataPros Lv1 Cat::矩阵处理|[[矩阵处理]]|Matrix-Manipulation.svg}}
| | query = query .. '[[' .. mw.text.encode(property) .. ']]' |
| <div class="template-navplate__groupheader">表格处理</div>
| | end |
| {{Navplate SMW Row2|数据处理|DataPros Lv1 Cat::表格处理|[[表格处理]]|Table-Manipulation.svg}}
| | |
| </div>
| | -- 转换查询为#ask解析器函数的形式,改为list格式,用'|'进行间隔 |
| </div>
| | local ask = '{{#ask:' .. query .. |
| <div class="template-navplate mw-collapsible mw-collapsed" id="navplate-节点">
| | '|format=list' .. |
| <div class="template-navplate__header mw-collapsible-toggle">
| | '|link=all' .. |
| <div class="citizen-ui-icon mw-ui-icon-wikimedia-collapse"></div>
| | '|headers=hide' .. |
| <div class="template-navplate__headerContent">
| | '|searchlabel=' .. |
| <div class="template-navplate__subtitle">列表</div>
| | '|class=smwlist' .. |
| <div class="template-navplate__title">数据分析节点</div>
| | '|sep=' .. -- 指定列表项分隔符为逗号 |
| </div>
| | '}}' |
| </div>
| | |
| <div class="template-navplate__content mw-collapsible-content">
| | -- 执行查询 |
| <div class="template-navplate__groupheader">描述性统计</div>
| | local results = frame:preprocess(ask) |
| {{Navplate SMW Row2|数据分析|DataAGM Lv1 Cat::描述统计|[[描述统计]]|Statistical-Discription.svg}}
| | |
| <div class="template-navplate__groupheader">统计检验</div>
| | -- 缓存查询结果 |
| {{Navplate SMW Row2|数据分析|DataAGM Lv1 Cat::正态性检验|[[正态性检验]]|Normality-Test.svg}}
| | p.cache[cacheKey] = results |
| {{Navplate SMW Row2|数据分析|DataAGM Lv1 Cat::参数检验|[[参数检验]]|Parametric_Test.svg}}
| | |
| {{Navplate SMW Row2|数据分析|DataAGM Lv1 Cat::非参数检验|[[非参数检验]]|Nonparametric-Test.svg}}
| | -- 格式化输出 |
| {{Navplate SMW Row2|数据分析|DataAGM Lv1 Cat::频数表检验|[[频数表检验]]|Frequency-Test.svg}}
| | local itemDiv = mw.html.create('div'):addClass('template-navplate-item') |
| <div class="template-navplate__groupheader">方差分析</div>
| | local categoryDiv = mw.html.create('div'):addClass('template-navplate-item__category') |
| {{Navplate SMW Row2|数据分析|DataAGM Lv1 Cat::方差分析|[[方差分析]]|ANOVA-Analysis.svg}}
| | local metadata = mw.html.create('div'):addClass('metadata') |
| <div class="template-navplate__groupheader">相关分析</div>
| | local listDiv = mw.html.create('div'):addClass('template-navplate-item__list') |
| {{Navplate SMW Row2|数据分析|DataAGM Lv1 Cat::相关分析|[[相关分析]]|Correlation-Analysis.svg}}
| | |
| <div class="template-navplate__groupheader">回归分析</div>
| | -- 添加图标和类别 |
| {{Navplate SMW Row2|数据分析|DataAGM Lv1 Cat::回归分析|[[回归分析]]|Regression-Analysis.svg}} | | metadata:wikitext('[[File:' .. mw.text.encode(icon) .. '|20px|link=]] ') |
| <div class="template-navplate__groupheader">时序分析</div>
| | local textLink = mw.html.create('span') -- 定义textLink变量 |
| {{Navplate SMW Row2|数据分析|DataAGM Lv1 Cat::时序分析|[[时序分析]]|TimeSeries-Analysis.svg}}
| | textLink:wikitext('[[' .. mw.text.encode(text) .. ']]') |
| <div class="template-navplate__groupheader">潜变量分析</div>
| | |
| {{Navplate SMW Row2|数据分析|DataAGM Lv1 Cat::潜变量分析|[[潜变量分析]]|LatentClass-Analysis.svg}}
| | -- 添加查询结果 |
| <div class="template-navplate__groupheader">生存分析</div>
| | listDiv:wikitext(results) |
| {{Navplate SMW Row2|数据分析|DataAGM Lv1 Cat::生存分析|[[生存分析]]|Survival-Analysis.svg}}
| | |
| <div class="template-navplate__groupheader">多元分析</div>
| | -- 逐步组合所有部分 |
| {{Navplate SMW Row2|数据分析|DataAGM Lv1 Cat::多元分析|[[多元分析]]|Multivariate-Analysis.svg}}
| | categoryDiv |
| <div class="template-navplate__groupheader">综合分析</div>
| | :node(metadata) |
| {{Navplate SMW Row2|数据分析|DataAGM Lv1 Cat::综合分析|[[综合分析]]|Integrated_Analysis.svg}}
| | :node(textLink) |
| </div>
| | itemDiv |
| </div>
| | :node(categoryDiv) |
| <div class="template-navplate mw-collapsible mw-collapsed" id="navplate-节点">
| | :node(listDiv) |
| <div class="template-navplate__header mw-collapsible-toggle">
| | |
| <div class="citizen-ui-icon mw-ui-icon-wikimedia-collapse"></div>
| | return tostring(itemDiv:allDone()) |
| <div class="template-navplate__headerContent">
| | end |
| <div class="template-navplate__subtitle">列表</div>
| | |
| <div class="template-navplate__title">机器学习节点</div>
| | return p |
| </div>
| |
| </div>
| |
| <div class="template-navplate__content mw-collapsible-content">
| |
| <div class="template-navplate__groupheader">数据集操作</div>
| |
| {{Navplate SMW Row2|机器学习|DataML Lv1 Cat::数据集拆分|[[数据集拆分]]|Data_Partition.svg}}
| |
| {{Navplate SMW Row2|机器学习|DataML Lv1 Cat::数据集导入导出|[[数据集导入导出]]|Data_Partition.svg}}
| |
| {{Navplate SMW Row2|机器学习|DataML Lv1 Cat::数据集整合|[[数据集整理]]|Data_Partition.svg}}
| |
| <div class="template-navplate__groupheader">分类器</div>
| |
| {{Navplate SMW Row2|机器学习|DataML Lv1 Cat::分类训练器|[[分类训练器]]|Classification_Trainning.svg}}
| |
| {{Navplate SMW Row2|机器学习|DataML Lv1 Cat::分类预测器|[[分类预测器]]|Classification_Predictor.svg}}
| |
| <div class="template-navplate__groupheader">交叉验证与模型评估</div>
| |
| {{Navplate SMW Row2|机器学习|Eva Lv1 Cat::模型评估|[[模型评估]]|Model_Evalutaion.svg}}
| |
| <div class="template-navplate__groupheader">神经网络</div>
| |
| {{Navplate SMW Row2|机器学习|ANN Lv1 Cat::数据神经网络|[[数据神经网络]]|Neural_Network.svg}}
| |
| </div>
| |
| </div>
| |
| <div class="template-navplate mw-collapsible mw-collapsed" id="navplate-节点">
| |
| <div class="template-navplate__header mw-collapsible-toggle">
| |
| <div class="citizen-ui-icon mw-ui-icon-wikimedia-collapse"></div>
| |
| <div class="template-navplate__headerContent">
| |
| <div class="template-navplate__subtitle">列表</div>
| |
| <div class="template-navplate__title">AI和神经网络</div>
| |
| </div>
| |
| </div>
| |
| <div class="template-navplate__content mw-collapsible-content">
| |
| <div class="template-navplate__groupheader">环境检测</div>
| |
| {{Navplate SMW Row2|系统环境|IP Lv1 Cat::运行环境检测|[[运行环境检测]]|Model_Evalutaion.svg}}
| |
| <div class="template-navplate__content mw-collapsible-content">
| |
| <div class="template-navplate__groupheader">图像处理</div>
| |
| {{Navplate SMW Row2|图像预处理|IP Lv1 Cat::图像读取|[[图像加载]]|Model_Evalutaion.svg}}
| |
| {{Navplate SMW Row2|图像预处理|IP Lv1 Cat::图像格式转换|[[图像格式]]|Model_Evalutaion.svg}}
| |
| {{Navplate SMW Row2|图像预处理|IP Lv1 Cat::图像滤波和平滑|[[图像滤波和平滑]]|Model_Evalutaion.svg}}
| |
| {{Navplate SMW Row2|图像预处理|IP Lv1 Cat::几何变换|[[几何变换]]|Model_Evalutaion.svg}}
| |
| {{Navplate SMW Row2|图像预处理|IP Lv1 Cat::颜色空间转换|[[颜色空间转换]]|Model_Evalutaion.svg}}
| |
| {{Navplate SMW Row2|图像预处理|IP Lv1 Cat::图像直方图|[[图像直方图]]|Model_Evalutaion.svg}}
| |
| {{Navplate SMW Row2|图像预处理|IP Lv1 Cat::图像算数|[[图像算数]]|Model_Evalutaion.svg}}
| |
| {{Navplate SMW Row2|图像预处理|IP Lv1 Cat::图像锐化|[[图像锐化处理]]|Model_Evalutaion.svg}}
| |
| {{Navplate SMW Row2|图像预处理|IP Lv1 Cat::图像形态学|[[图像形态学]]|Model_Evalutaion.svg}}
| |
| {{Navplate SMW Row2|图像预处理|IP Lv1 Cat::边缘检测|[[边缘检测]]|Model_Evalutaion.svg}}
| |
| {{Navplate SMW Row2|图像预处理|IP Lv1 Cat::图文处理|[[图文处理]]|Model_Evalutaion.svg}}
| |
| {{Navplate SMW Row2|图像预处理|IP Lv1 Cat::特征检测|[[特征检测]]|Model_Evalutaion.svg}}
| |
| {{Navplate SMW Row2|图像预处理|IP Lv1 Cat::图像分割|[[图像分割]]|Model_Evalutaion.svg}}
| |
| {{Navplate SMW Row2|图像预处理|IP Lv1 Cat::面部识别|[[图像识别]]|Model_Evalutaion.svg}}
| |
| </div>
| |
| </div>
| |
| </div>
| |
| <div class="template-navplate mw-collapsible mw-collapsed" id="navplate-节点">
| |
| <div class="template-navplate__header mw-collapsible-toggle">
| |
| <div class="citizen-ui-icon mw-ui-icon-wikimedia-collapse"></div>
| |
| <div class="template-navplate__headerContent">
| |
| <div class="template-navplate__subtitle">列表</div>
| |
| <div class="template-navplate__title">工具和辅助节点(Utils)</div>
| |
| </div>
| |
| </div>
| |
| <div class="template-navplate__content mw-collapsible-content">
| |
| <div class="template-navplate__groupheader">I/O工具</div>
| |
| {{Navplate SMW Row2|工具和辅助节点|Utils IOLv1 Cat::Utils: 输入|[[Utils:输入]]|Model_Evalutaion.svg}}
| |
| <div class="template-navplate__content mw-collapsible-content">
| |
| <div class="template-navplate__groupheader">流程管理</div>
| |
| {{Navplate SMW Row2|工具和辅助节点|Utils WFCLv1 Cat::Utils: 流程控制|[[Utils:流程控制]]|Model_Evalutaion.svg}}
| |
| <div class="template-navplate__content mw-collapsible-content">
| |
| <div class="template-navplate__groupheader">转换工具</div>
| |
| {{Navplate SMW Row2|工具和辅助节点|Utils TFLv1 Cat::Utils: 转换|[[Utils:转换]]|Model_Evalutaion.svg}}
| |
| </div>
| |
| </div>
| |
| </div>
| |
| </div>
| |
| <templatestyles src="Module:Navplate SMW row/styles.css" /><noinclude>{{/doc}}</noinclude>
| |
-- Module:NavplateSMWRow
local p = {}
local mw = require('mw')
p.cache = {} -- 初始化缓存
function p.navplateSmwRow(frame)
local args = frame:getParent().args
local categoryName = args[1]
local property = args[2]
local text = args[3]
local icon = args[4]
-- 使用缓存结果,减少查询
local cacheKey = categoryName .. (property or ) .. (text or )
if p.cache[cacheKey] then
return p.cache[cacheKey]
end
-- 构建查询
local query =
if property and property ~= then
query = query .. '' .. mw.text.encode(property) .. ''
end
-- 转换查询为#ask解析器函数的形式,改为list格式,用'|'进行间隔
local ask = '<ul><li>查询的“' .. query .. '”部分无法理解。结果可能与预料的不同。</li> <!--br--><li>一些子查询状态无效。</li></ul>'
-- 执行查询
local results = frame:preprocess(ask)
-- 缓存查询结果
p.cache[cacheKey] = results
-- 格式化输出
local itemDiv = mw.html.create('div'):addClass('template-navplate-item')
local categoryDiv = mw.html.create('div'):addClass('template-navplate-item__category')
local metadata = mw.html.create('div'):addClass('metadata')
local listDiv = mw.html.create('div'):addClass('template-navplate-item__list')
-- 添加图标和类别
metadata:wikitext('文件:' .. mw.text.encode(icon) .. ' ')
local textLink = mw.html.create('span') -- 定义textLink变量
textLink:wikitext('' .. mw.text.encode(text) .. '')
-- 添加查询结果
listDiv:wikitext(results)
-- 逐步组合所有部分
categoryDiv
:node(metadata)
:node(textLink)
itemDiv
:node(categoryDiv)
:node(listDiv)
return tostring(itemDiv:allDone())
end
return p