[//]: # (title: Slice rows)
Returns a [`DataFrame`](DataFrame.md) with rows at given indices:
```kotlin
df[0, 3, 4]
```
Returns a [`DataFrame`](DataFrame.md) with rows inside given index ranges (including boundary indices):
```kotlin
df[1..2]
df[0..2, 4..5]
```
## take
Returns a [`DataFrame`](DataFrame.md) containing first `n` rows
```kotlin
df.take(5)
```
## takeLast
Returns a [`DataFrame`](DataFrame.md) containing last `n` rows
```kotlin
df.takeLast(5)
```
## takeWhile
Returns a [`DataFrame`](DataFrame.md) containing first rows that satisfy the given [condition](DataRow.md#row-conditions)
```kotlin
df.takeWhile { isHappy }
```
## drop
Returns a [`DataFrame`](DataFrame.md) containing all rows except first `n` rows
```kotlin
df.drop(5)
```
## dropLast
Returns a [`DataFrame`](DataFrame.md) containing all rows except last `n` rows
```kotlin
df.dropLast() // default 1
df.dropLast(5)
```
## dropWhile
Returns a [`DataFrame`](DataFrame.md) containing all rows except first rows that satisfy the given [condition](DataRow.md#row-conditions)
```kotlin
df.dropWhile { !isHappy }
```