CommencezCommencez gratuitement

Filtrer des colonnes

En tant qu'analyste des stocks pour une épicerie, vous devez nettoyer vos données d'inventaire afin de repérer les produits périssables à risque de détérioration. Les données brutes contiennent souvent des catégories non pertinentes et des niveaux de stock inexacts. Pour les nettoyer, vous allez filtrer la catégorie « Fruits & Vegetables » et les niveaux de stock élevés (plus de 50 unités). Ce processus retire les articles non périssables et les produits faiblement stockés, et vous laisse un ensemble de données propre de fruits et légumes présentant de possibles surplus. En nettoyant et en ciblant vos données, vous pouvez rapidement identifier quels produits périssables exigent une attention immédiate.

Cette activité fait partie du cours

Nettoyer des données en Java

Voir le cours

Instructions de l’exercice

  • Vérifiez si la colonne entière Stock_Quantity est supérieure à 50.
  • Vérifiez si la colonne de chaînes Category est égale à Fruits & Vegetables.
  • Filtrez inventory avec highQuantity.
  • Ajoutez une condition de filtrage pour fruitsAndVegetables.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

public class GroceryDataFiltering {
    public static void main(String[] args) {
        Table inventory = Table.read().csv("grocery_inventory.csv");

        // Check if the integer column is greater than 50
        Selection highQuantity = inventory.____("Stock_Quantity").____(50);
        // Check if the string column is equal to Fruits & Vegetables
        Selection fruitsAndVegetables = inventory.____("Category").____("Fruits & Vegetables");

        // Filter inventory by highQuantity
        Table highQuantityTable = inventory.____(highQuantity
                // Add a filter for fruitsAndVegetables
                .____(fruitsAndVegetables))
                .sortDescendingOn("Stock_Quantity");

        System.out.println("High quantity fruits and vegetables:");
        System.out.println(highQuantityTable.selectColumns("Product_Name", "Stock_Quantity").first(10));
    }
}
Modifier et exécuter le code