Javascript 包括加载本地CSV文件和运行wink naive bayes文本分类器的节点模块

Javascript 包括加载本地CSV文件和运行wink naive bayes文本分类器的节点模块,javascript,node.js,papaparse,Javascript,Node.js,Papaparse,我刚开始学习Node.js,不知道如何从本地CSV文件加载数据并使用它来学习数据 我可以使用或示例从本地CSV文件加载数据。但问题是,我不知道如何将wink的NaiveBayes库加载到客户端JS。有没有办法在我下面写的脚本中包含节点的模块,比如wink <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Test Naive Bay

我刚开始学习Node.js,不知道如何从本地CSV文件加载数据并使用它来学习数据

我可以使用或示例从本地CSV文件加载数据。但问题是,我不知道如何将wink的NaiveBayes库加载到客户端JS。有没有办法在我下面写的脚本中包含节点的模块,比如wink

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Test Naive Bayes</title>
    <script src="https://code.jquery.com/jquery-3.3.1.min.js"
            integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8="
            crossorigin="anonymous"></script>
    <script src="./papaparse.min.js"></script>

</head>
<body>
<input type="file" id="csv-file" name="files"/>
</body>
<script>
    // REF: https://www.joyofdata.de/blog/parsing-local-csv-file-with-javascript-papa-parse/
    // http://archive.is/ySSC8
    var data;
    function handleFileSelect(evt) {
        var file = evt.target.files[0];
        Papa.parse(file, {
            header: true,
            dynamicTyping: true,
            complete: function(results) {
                data = results;
            }
        });
    }

    $(document).ready(function(){
        $("#csv-file").change(handleFileSelect);
    });
</script>

</html>

在浏览器中工作时使用节点模块的一种简单方法是使用。在您的工作目录中:

npm install wink-naive-bayes-text-classifier --save
npm install -g browserify
您必须将代码移动到单独的脚本文件中,比如process-data.js。并且,从HTML中,您将包含一个不同的脚本-bundle.js,我们将在最后讨论:

测试朴素贝叶斯 在process-data.js中,您现在可以只需要使用库,如图1所示

//参考:https://www.joyofdata.de/blog/parsing-local-csv-file-with-javascript-papa-parse/ // http://archive.is/ySSC8 //加载朴素贝叶斯文本分类器 var分类器=需要“wink naive bayes文本分类器”; //实例化 var-nbc=分类器; var数据; 函数handleFileSelectevt{ var file=evt.target.files[0]; Papa.parsefile{ 标题:对, 动态打字:对, 完成:函数结果{ 数据=结果; //您现在可以使用nbc和数据: //nbc.Learnada[0]; } }; } $document.readyfunction{ $csv-file.changehandleFileSelect; }; 最后,要创建bundle.js文件,您将运行browserify:

browserify process-data.js -o bundle.js

这将把您需要的所有模块捆绑到一个HTML调用的文件中。如果您不想键入这么多,每次您可能考虑添加.< /p>,您可以使用模块捆绑器(如WebPACK或BurSeriType)将节点模块转换为可在前端使用的捆绑包。更多信息请点击这里:@JakeMiller谢谢!我会看一看,如果有后续问题,可能会回来问。