给dataframe加行索引
时间: 2023-04-08 08:04:15 浏览: 466
可以使用pandas库中的set_index()方法来给dataframe加行索引。例如,如果要以列名为“id”的列作为行索引,可以使用以下代码:
df.set_index('id', inplace=True)
其中,df是你的dataframe对象,inplace=True表示直接在原dataframe上修改。
相关问题
DataFrame 重置行索引
Pandas的DataFrame可以使用`reset_index()`方法重置行索引。该方法将当前索引作为新的一列添加到DataFrame中,并重新编号行索引。
示例代码:
```python
import pandas as pd
# 创建一个DataFrame
df = pd.DataFrame({'name': ['Alice', 'Bob', 'Charlie'], 'age': [25, 30, 35]})
# 输出原始的行索引
print(df.index)
# 重置行索引
df = df.reset_index()
# 输出重置后的行索引
print(df.index)
```
输出结果:
```
RangeIndex(start=0, stop=3, step=1)
RangeIndex(start=0, stop=3, step=1)
```
在上面的示例中,首先创建了一个包含三行两列数据的DataFrame,并输出了原始的行索引。然后使用`reset_index()`方法重置了行索引,并输出了重置后的行索引。可以看到,重置后的行索引是从0开始重新编号的。
dataframe按行索引
使用`loc`方法可以按行索引访问DataFrame的数据,例如:
```python
import pandas as pd
data = {'name': ['Alice', 'Bob', 'Charlie'],
'age': [25, 30, 35],
'gender': ['F', 'M', 'M']}
df = pd.DataFrame(data, index=['id1', 'id2', 'id3'])
print(df.loc['id1']) # 访问第一行数据
```
输出:
```
name Alice
age 25
gender F
Name: id1, dtype: object
```
也可以一次访问多行数据:
```python
print(df.loc[['id1', 'id3']])
```
输出:
```
name age gender
id1 Alice 25 F
id3 Charlie 35 M
```
注意,`loc`方法的索引值是DataFrame的行索引(即通过`index`参数指定的索引值),而不是默认的整数索引。如果要按整数索引访问DataFrame的数据,可以使用`iloc`方法,例如`df.iloc[0]`会访问第一行数据。
阅读全文