生成Pandas Dataframe,代码及输出结果如下:
import random
import pandas as pd
name_list = ['kim', 'kim', 'Amy', 'John', 'Amy', 'Bob']
result = []
for i in range(len(name_list)):
dt = {
"name": name_list[i],
"age": i + random.randint(1, 10),
"weight": i * random.randint(1, 10)
}
result.append(dt)
df = pd.DataFrame(result)
print(df)
输出结果:
例如:查询 name=kim 且 age>5的数据:
print(df[(df.name == 'kim') & (df.age > 5)])
以name列去重:
df = pd.DataFrame(result).drop_duplicates(
subset=['name'], # 去重列,按这些列进行去重
keep='first' # 保存第一条重复数据
)
print(df)
其中,subset可以多字段为参数,keep可选参数为‘first’, ‘last’,分别对应保留第一条和最后一条