无法下载和安装scikit-learn

时间:2016-01-02 21:57:55

标签: python installation scikit-learn

我对python很新。我想使用KMean代码,我想安装getBarGap()import java.time.LocalDate; import java.util.ArrayList; import java.util.List; import java.util.Random; import javafx.application.Application; import static javafx.application.Application.launch; import javafx.application.Platform; import javafx.scene.Scene; import javafx.scene.chart.CategoryAxis; import javafx.scene.chart.NumberAxis; import javafx.scene.chart.StackedBarChart; import javafx.scene.chart.XYChart; import javafx.scene.layout.HBox; import javafx.stage.Stage; public class MainApp extends Application { private StackedBarChart<String, Number> stackedChart; private List<EventsObj> eventsObj; @Override public void start(Stage stage) throws Exception { createStackedChart(); List<EventsObj> testData = generateTestData(); addStackedChartData(testData); HBox hb = new HBox(); hb.getChildren().add(stackedChart); Scene scene = new Scene(hb); stage.setTitle("JavaFX and Maven"); stage.setScene(scene); stage.show(); } public static void main(String[] args) { launch(args); } private void createStackedChart() { CategoryAxis xAxis = new CategoryAxis(); xAxis.setLabel("Days"); NumberAxis yAxis = new NumberAxis(); stackedChart = new StackedBarChart<>(xAxis, yAxis); stackedChart.setCategoryGap(20); stackedChart.widthProperty().addListener((obs, b, b1) -> { // Chart Bar column is not automatically resized. We need to wait for next JavaFX releases to fix this. Platform.runLater(() -> setMaxBarWidth(stackedChart, xAxis, 40, 10)); }); } private List<EventsObj> generateTestData() { eventsObj = new ArrayList<>(); for (int i = 0; i < 5; i++) { eventsObj.add(new EventsObj(String.valueOf(randomDate()), random(2, 60), random(2, 60), random(2, 60), random(2, 60))); } return eventsObj; } public static int random(int lowerBound, int upperBound) { return (lowerBound + (int) Math.round(Math.random() * (upperBound - lowerBound))); } private LocalDate randomDate() { Random random = new Random(); int minDay = (int) LocalDate.of(1900, 1, 1).toEpochDay(); int maxDay = (int) LocalDate.of(2015, 1, 1).toEpochDay(); long randomDay = minDay + random.nextInt(maxDay - minDay); LocalDate randomBirthDate = LocalDate.ofEpochDay(randomDay); return randomBirthDate; } private void addStackedChartData(List<EventsObj> data) { List<XYChart.Series<String, Number>> dataSeries = new ArrayList<>(data.size()); for (EventsObj data1 : data) { final XYChart.Series<String, Number> series1 = new XYChart.Series<>(); series1.setName(data1.getDate()); series1.getData().setAll( new XYChart.Data<>("Info", data1.getInfo())); dataSeries.add(series1); } stackedChart.getData().setAll(dataSeries); } private void setMaxBarWidth(StackedBarChart<String, Number> bc, CategoryAxis xAxis, double maxBarWidth, double minCategoryGap) { double barWidth = 0; do { double catSpace = xAxis.getCategorySpacing(); double avilableBarSpace = catSpace - (bc.getCategoryGap() + bc.getCategoryGap()); barWidth = (avilableBarSpace / bc.getData().size()) - bc.getCategoryGap(); if (barWidth > maxBarWidth) { avilableBarSpace = (maxBarWidth + bc.getCategoryGap()) * bc.getData().size(); bc.setCategoryGap(catSpace - avilableBarSpace - bc.getCategoryGap()); } } while (barWidth > maxBarWidth); do { double catSpace = xAxis.getCategorySpacing(); double avilableBarSpace = catSpace - (minCategoryGap + bc.getCategoryGap()); barWidth = Math.min(maxBarWidth, (avilableBarSpace / bc.getData().size()) - bc.getCategoryGap()); avilableBarSpace = (barWidth + bc.getCategoryGap()) * bc.getData().size(); bc.setCategoryGap(catSpace - avilableBarSpace - bc.getCategoryGap()); } while (barWidth < maxBarWidth && bc.getCategoryGap() > minCategoryGap); } }

我使用此代码尝试安装这些软件包:

scikit-learn

但我收到了这个错误:

sklearn

问题的原因是什么?

1 个答案:

答案 0 :(得分:6)

pip install -U <package>pip install --upgrade <package>的缩写,会将<package>升级到pip repo中最新的稳定版本。

pip install <package>会在pip repo中安装<package>的最新稳定版本。

不同之处在于升级与安装。你想要后者。

scikit-learn需要scipynumpy,因此以下是您应该发出的命令:

pip install numpy
pip install scipy
pip install scikit-learn

如果您已有任何依赖项,只需在-U和程序包名称之间插入pip install

如果您使用的是Python 3.x,请将pip替换为pip3