如何解决当我执行pandas分析包时,它不会返回最小值,最大值和平均值
当我使用 pandas-profiling == 2.8.0 对以下数据进行分析时,它不会返回最小值,最大值和平均值。
CSV数据
a,b,c
12,2.5,0
12,4.7,5
33,5,4
44,44.21,67
python代码
import json
import pandas as pd
from pandas_profiling import ProfileReport
def profile_report(data):
dataset = data.select_dtypes(include=['int64','float64'])
profile=ProfileReport(dataset,minimal=True)
json_data=profile.to_json()
results = json.loads(json_data)
print(json.dumps(results,indent=4))
if __name__ == "__main__":
df = pd.read_csv('data.csv',index_col=None)
profile_report(df)
在某些情况下,它可以正常工作,并返回最小值,最大值和平均值。但是当我在csv数据之上执行时,它不会返回该值
解决方法
对于元素数少于给定数(例如5)的数据集,pandas分析假定您的变量是分类的,而不是区间的。
使用vars.num.low_categorical_threshold
参数更改此(docs)
示例:
profile = ProfileReport(dataset,minimal=True,vars=dict(num={"low_categorical_threshold": 0}))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。