簡體   English   中英

在 pandas/matplotlib 中拉取 Dataframe 圖形標題的名稱

[英]Pulling Dataframe Name for graph title in pandas/matplotlib

我確信有一個簡單的解決方案,但我有一個數據框列表,我使用相同的變量為其生成許多圖表。

對於圖表的標題,我想包括 dataframe 名稱,以便有助於組織。 我試圖調用 plt.title() 下的列表,但這沒有奏效。 如果您對此有解決方案,將不勝感激。

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns
import sklearn

# import normal stats from csv in following order (Normal, Adversarial, Helpful, Neutral, Random)
# map 1
df1 = pd.read_csv('D:/Documents/Data Science/L4D2 Stats - No Mercy CSV files updated version/Normal/L4D2 Stats normal - c8m1 apartment.csv', header=0)
df2 = pd.read_csv('D:/Documents/Data Science/L4D2 Stats - No Mercy CSV files updated version/Adversarial/L4D2 Stats adversarial - c8m1 apartment.csv', header=0)
df3 = pd.read_csv('D:/Documents/Data Science/L4D2 Stats - No Mercy CSV files updated version/Helpful/L4D2 Stats helpful - c8m1 apartment.csv', header=0)
df4 = pd.read_csv('D:/Documents/Data Science/L4D2 Stats - No Mercy CSV files updated version/Neutral/L4D2 Stats neutral - c8m1 apartment.csv', header=0)
df5 = pd.read_csv('D:/Documents/Data Science/L4D2 Stats - No Mercy CSV files updated version/Random/L4D2 stats random - c8m1 apartment.csv', header=0)

#map 2

#df6 = pd.read_csv()
#df7 = pd.read.csv()
#df8 = pd.read.csv()
#df9 = pd.read.csv()
#df10 = pd.read.csv()


#map 3

#df11 = pd.read.csv()
#df12 = pd.read.csv()
#df13 = pd.read.csv()
#df14 = pd.read.csv()
#df15 = pd.read.csv()

#map 4

#df16 = pd.read.csv()
#df17 = pd.read.csv()
#df18 = pd.read.csv()
#df19 = pd.read.csv()
#df20 = pd.read.csv()

df_list = [df1, df2, df3, df4, df5]
# df_list2 = [df6, df7, df8, df9, df10]
# df_list3 = [df11, df12, df13, df14, df15]
# df_list4 = [df16, df17, df18, df19, df20]

for df in df_list:
    df = df
    df.describe()
    df.columns = ['Population', 'Special Spawns', 'Bot 1 Health', 'Bot 2 Health', 'Bot 3 Health', 'Bot 4 Health',
                  'Incaps', 'Bot 1 Intensity', 'Bot 2 Intensity', 'Bot 3 Intensity', 'Bot 4 Intensity']
    df['Special Spawns'] = df['Special Spawns'].fillna(0)
    df['Population'] = df['Population'].fillna(0)
    df['Bot 1 Health'] = df['Bot 1 Health'].fillna(0)
    df['Bot 2 Health'] = df['Bot 2 Health'].fillna(0)
    df['Bot 3 Health'] = df['Bot 3 Health'].fillna(0)
    df['Bot 4 Health'] = df['Bot 4 Health'].fillna(0)
    df['Incaps'] = df['Incaps'].fillna(0)
    df['Bot 1 Intensity'] = df['Bot 1 Intensity'].fillna(0)
    df['Bot 2 Intensity'] = df['Bot 2 Intensity'].fillna(0)
    df['Bot 3 Intensity'] = df['Bot 3 Intensity'].fillna(0)
    df['Bot 4 Intensity'] = df['Bot 4 Intensity'].fillna(0)

    normalised_df = (df-df.mean())/df.std()
    pd.options.display.float_format = '{:,.8f}'.format
    normalised_df.corr()
    plt.figure(figsize=(12, 8))
    sns.heatmap(normalised_df.corr(), annot=True, fmt=".4f")
    # input map name
    plt.title()
    plt.show()

您可以將數據框放入字典中,並將鍵用作 plot 標題。

df_dict = {1: df1, 2: df2}
for key, df in df_dict.items():
    plt.title(key)

嘗試使用 object 的名稱作為字符串並不是一個好主意,如此所述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM