Pandas:索引列表的数据框列中每个列表的第一个元素
Pandas: Index the first element of each list in a dataframe column of lists
我有一系列列表,想使用 pandas 为列表数据框中每个列表的第一个元素编制索引。我该怎么做?
工作示例
我的原始数据集是一个 pandas 数据框,看起来像:
# Import raw dataset from URL
url = 'http://archive.ics.uci.edu/ml/machine-learning-databases/auto-mpg/auto-mpg.data'
column_names = ['MPG', 'Cylinders', 'Displacement', 'Horsepower',
'Weight', 'Acceleration', 'Model Year', 'Origin', 'Carname']
train = pd.read_csv(url, names=column_names,
na_values='?',sep='\s+'
, skipinitialspace=True)
temp1 = pd.DataFrame(train["Carname"].str.split())
print(temp1)
Carname
0 [plymouth, champ]
1 [amc, matador]
2 [chevroelt, chevelle, malibu]
... ...
1489 [vw, dasher, (diesel)]
1490 [honda, accord]
1491 [ford, escort, 4w]
所需的结果类似于,
'plymouth'
'amc'
'chevroelt'
.....
您可以将一个函数应用于选择每个系列项目的第一个元素的系列,从而产生一个新系列:
s_first_elements = s.apply(lambda x: x[0])
可以使用字符串访问器.str[]
,如下:
temp1['Carname'].str[0] # str[0] for first element in list
结果:
0 chevrolet
1 buick
2 plymouth
3 amc
4 ford
...
393 ford
394 vw
395 dodge
396 ford
397 chevy
Name: Carname, Length: 398, dtype: object
我有一系列列表,想使用 pandas 为列表数据框中每个列表的第一个元素编制索引。我该怎么做?
工作示例
我的原始数据集是一个 pandas 数据框,看起来像:
# Import raw dataset from URL
url = 'http://archive.ics.uci.edu/ml/machine-learning-databases/auto-mpg/auto-mpg.data'
column_names = ['MPG', 'Cylinders', 'Displacement', 'Horsepower',
'Weight', 'Acceleration', 'Model Year', 'Origin', 'Carname']
train = pd.read_csv(url, names=column_names,
na_values='?',sep='\s+'
, skipinitialspace=True)
temp1 = pd.DataFrame(train["Carname"].str.split())
print(temp1)
Carname
0 [plymouth, champ]
1 [amc, matador]
2 [chevroelt, chevelle, malibu]
... ...
1489 [vw, dasher, (diesel)]
1490 [honda, accord]
1491 [ford, escort, 4w]
所需的结果类似于,
'plymouth'
'amc'
'chevroelt'
.....
您可以将一个函数应用于选择每个系列项目的第一个元素的系列,从而产生一个新系列:
s_first_elements = s.apply(lambda x: x[0])
可以使用字符串访问器.str[]
,如下:
temp1['Carname'].str[0] # str[0] for first element in list
结果:
0 chevrolet
1 buick
2 plymouth
3 amc
4 ford
...
393 ford
394 vw
395 dodge
396 ford
397 chevy
Name: Carname, Length: 398, dtype: object