Weka only changing numeric to nominal

假如想象 提交于 2019-12-04 02:58:13

I assume you are using the Weka Explorer (GUI). To apply the filter to specific attributes do the following.

Step 1: Select your filter in the preprocess tab
Step 2: Click on the box to the right of the "Choose" button (a new window opens)
Step 3: In the attributeIndices box enter your custom ranges

If you select the "More" button in the filter window you will get an explanation of the different options and the values you can supply.

In your particular case, the filter is by default applied to the first through last attributes. You should change the range to reflect your personal needs.

====Edit====
If you are using the Java API, the following code will point you in the right direction.

 
import weka.core.Instances;
import weka.filters.Filter;
import weka.filters.unsupervised.attribute.NumericToNominal;

public class Main {

    public static void main(String[] args) throws Exception
    {

        //load training instances
        Instances originalTrain= //...load data with numeric attributes 

        NumericToNominal convert= new NumericToNominal();
        String[] options= new String[2];
        options[0]="-R";
        options[1]="1-2";  //range of variables to make numeric

        convert.setOptions(options);
        convert.setInputFormat(originalTrain);

        Instances newData=Filter.useFilter(originalTrain, convert);

        System.out.println("Before");
        for(int i=0; i<2; i=i+1)
        {
            System.out.println("Nominal? "+originalTrain.attribute(i).isNominal());
        }

        System.out.println("After");
        for(int i=0; i<2; i=i+1)
        {
            System.out.println("Nominal? "+newData.attribute(i).isNominal());
        }

    }

} 

first open the arff file. under filter click "choose" . under filter tree , navigate to unsupervised and search for "NumerictoNomial" .Click once and press Apply. Save the File and reload it. Note: Make sure you have checked the checkbox of your desired field that you want to change.

Click on the NumericToNominal tab and a window should show up, choose the appropriate attributeIndices which you want to change to nominal

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!