gpt4 book ai didi

python - 将 python pandas 数据帧的行名称提取为 pandas 系列

转载 作者:行者123 更新时间:2023-12-02 02:58:04 28 4
gpt4 key购买 nike

是否可以将 python pandas 数据帧的行名称提取为 pandas 系列?谢谢!

# packages
import numpy as np
import pandas as pd
import statsmodels.api as sm

# the mt cars dataset
mtcars = sm.datasets.get_rdataset("mtcars", "datasets", cache=True).data
df = pd.DataFrame(mtcars)
df = df[1:5]

# DESIRED OUTCOCME - SOMETHING THAT LOOKS LIKE 'desired_series'
row_names = np.array(['Mazda RX4 Wag','Datsun 710','Hornet 4 Drive','Hornet Sportabout'])
desired_series = pd.Series(row_names)
print(desired_series)

0 Mazda RX4 Wag
1 Datsun 710
2 Hornet 4 Drive
3 Hornet Sportabout
dtype: object)

最佳答案

将索引值传递给Series构造函数:

s = pd.Series(df.index)
print (s)
0 Mazda RX4 Wag
1 Datsun 710
2 Hornet 4 Drive
3 Hornet Sportabout
dtype: object

或者如果使用 Index.to_series需要通过 Series.reset_index 创建默认索引默认 RangeIndex 使用 drop=True,因为默认情况下索引和值相同:

print (df.index.to_series())
Mazda RX4 Wag Mazda RX4 Wag
Datsun 710 Datsun 710
Hornet 4 Drive Hornet 4 Drive
Hornet Sportabout Hornet Sportabout
dtype: object

s = df.index.to_series().reset_index(drop=True)
0 Mazda RX4 Wag
1 Datsun 710
2 Hornet 4 Drive
3 Hornet Sportabout
dtype: object

另一个想法是通过 np.arangeDataFrame 的长度传递 index 参数:

s = df.index.to_series(index=np.arange(len(df)))
print (s)
0 Mazda RX4 Wag
1 Datsun 710
2 Hornet 4 Drive
3 Hornet Sportabout
dtype: object

关于python - 将 python pandas 数据帧的行名称提取为 pandas 系列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60636908/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com