可能有人会好奇为什么前面有了精简代码,这里还有个极简代码呢?细心的读者可能发现了,在上篇中,要人力分析数据,并手动创建多个列表才能进行计算,而本次的代码可以几乎跳过这一步,几乎通用而省略掉繁杂的重复工作。
import pandas as pd
import numpy as np
import plotly.express as px
import plotly
data = pd.read_csv('benchi_more.csv')
data_sorted = data.sort_values(by=['Name'],ascending=False)
models = data_sorted['Name']
#列表,所有整理好的数据. 包含信息全面 eg ['奔驰迈巴赫S级', 'S680', '6.0T', '自动', '双调典藏版'],
org = []
for i in models:
# replace 返回的是字符串
m = i.replace('-',' ')
# 而split返回的是列表
s = m.split(' ')
org.append(s)
series_li = []
for i in org:
series_li.append(i[0])
#用set去重,得到所有series的name eg 奔驰E级
series_li_filtered = list(set(series_li))
print(series_li_filtered)
print(len(series_li_filtered))
关键步骤