При чтении из файла .csv по умолчанию первая строка считается строкой заголовка. Вы должны указать, что это не так. Итак, добавьте header=None
в read_csv
. Вот так:
df = pd.read_csv(io.StringIO(dataset.decode('utf-8')), header=None)
Кроме того, один из способов получить желаемый результат:
data=[]
for r1, r2, r3 in df.values:
data.append([r1,r2,r3])
Вместо этого вам нужно использовать комбинацию SkipWhile
и TakeWhile
.
foreach (int i in Fibonacci().SkipWhile(n => n < 24)
.TakeWhile(n => n <= 56))
{
Console.WriteLine(i);
}
Они могут завершать циклы в зависимости от условия; Где
передает свой ввод (фильтруя соответственно), пока не закончится ввод (в вашем случае, никогда).
Я не думаю, что это возможно, если вы не напишите своего собственного поставщика LINQ. В приведенном вами примере вы используете LINQ to Objects, который должен полностью оценить IEnumerable, прежде чем он сможет применить к нему фильтр.