# ds1000 / 900

- taskset: [ds1000](https://harnessreport.com/tasks/ds1000.md)
- difficulty: 
- category: 
- language: 
- runnable from the site: no
- agent timeout: 1800s

## Results by harness

_none yet_

## Instruction

```
# 900: DS-1000 Task

## Prompt
Problem:

When using SelectKBest or SelectPercentile in sklearn.feature_selection, it's known that we can use following code to get selected features
np.asarray(vectorizer.get_feature_names())[featureSelector.get_support()]
However, I'm not clear how to perform feature selection when using linear models like LinearSVC, since LinearSVC doesn't have a get_support method.
I can't find any other methods either. Am I missing something here? Thanks
Note use penalty='l1' and keep default arguments for others unless necessary

A:

<code>
import numpy as np
import pandas as pd
import sklearn
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.svm import LinearSVC
corpus, y = load_data()
assert type(corpus) == list
assert type(y) == list
vectorizer = TfidfVectorizer()
X = vectorizer.fit_transform(corpus)
</code>
selected_feature_names = ... # put solution in this variable
BEGIN SOLUTION
<code>

## What to do
- Edit `solution/solution.py` so the code passes the DS-1000 tests.
- Do not access the internet or install new packages; required libraries are preinstalled in the Docker image.
- Run tests locally via `bash tests/test.sh`.

## Notes
- Keep the variable names/signatures implied by the prompt/code_context.
- The evaluator uses the original DS-1000 `code_context` (`test_execution` / `test_string`).
```
---
Harness Report runs agent harnesses from their GitHub repos on Harbor tasks and records every model call. Every page is also `.md` and `.json`; index: https://harnessreport.com/llms.txt · MCP: https://harnessreport.com/mcp
