将序列转换为数组

2024-05-03 22:20:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我刚刚玩了一个餐馆的数据集,我用count_values()计算了不同餐馆的位置值,现在我需要将它提取成数组形式 我的代码:

location_to_keep = dataset['location'].value_counts()

print(location_to_keep)

output:
BTM                           2181
Koramangala 5th Block         1987
Indiranagar                   1394
HSR                           1329
Jayanagar                     1281
JP Nagar                      1163
Whitefield                     916
Koramangala 7th Block          838
Koramangala 6th Block          813
Marathahalli                   762
Koramangala 4th Block          706
Brigade Road                   699
MG Road                        641
Bannerghatta Road              609
Ulsoor                         597
Koramangala 1st Block          568
Bellandur                      542
Sarjapur Road                  534
Kalyan Nagar                   532
Banashankari                   480
Residency Road                 465
Church Street                  464
Richmond Road                  457
Malleshwaram                   454
Lavelle Road                   437
Basavanagudi                   416
Electronic City                386
Cunningham Road                383
New BEL Road                   338
Frazer Town                    33

是否需要以数组形式将其与餐厅名称一起提取? 有的回复很快


Tags: to数据代码countlocation数组blockdataset
1条回答
网友
1楼 · 发布于 2024-05-03 22:20:51

我认为@Quang Hoang做对了,list(location_to_keep.index)应该能解决你的问题。为了完整性,这里有一个最小的可复制的例子

import pandas as pd
import numpy as np
dataset = pd.DataFrame()
locations = ['A', 'B', 'C', 'D']
dataset['location'] = np.random.choice(locations, 1000)

通过使用value_counts,我们应该得到如下结果

In [1]: location_to_keep = dataset['location'].value_counts()
        print(location_to_keep)
Out[1]: B    272
        C    259
        D    247
        A    222
        Name: location, dtype: int64

然后可以用index获得名称,用values获得计数

In [2]: list(location_to_keep.values)
Out[2]: [272, 259, 247, 222]

In [3]: list(location_to_keep.index)
Out[3]: ['B', 'C', 'D', 'A']

相关问题 更多 >