Hướng dẫn plot unique values python - vẽ các giá trị duy nhất python

Cho dữ liệu của bạn

  • Thiết lập nhập khẩu và DataFrame
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

# plot parameters
plt.style.use['seaborn']
plt.rcParams['figure.figsize'] = [16.0, 10.0]

data = {'country': ['Afghanistan', 'Afghanistan', 'Afghanistan', 'Afghanistan', 'Albania', 'Albania', 'Albania', 'Albania'],
        'year': [1975, 1985, 1995, 2005, 1975, 1985, 1995, 2005],
        'value': [2127, 3509, 1243, 1327, 4595, 7880, 2087, 4254]}

df = pd.DataFrame[data]

       country  year  value
0  Afghanistan  1975   2127
1  Afghanistan  1985   3509
2  Afghanistan  1995   1243
3  Afghanistan  2005   1327
4      Albania  1975   4595
5      Albania  1985   7880
6      Albania  1995   2087
7      Albania  2005   4254

Sử dụng
p = sns.barplot[x='year', y='value', hue='country', data=df]
1 với tham số
p = sns.barplot[x='year', y='value', hue='country', data=df]
2

p = sns.barplot[x='year', y='value', hue='country', data=df]

Theo chiều ngang

p = sns.barplot[x='value', y='year', hue='country', data=df, orient='h']

Một âm mưu riêng cho mỗi quốc gia

  • Sử dụng
    p = sns.barplot[x='year', y='value', hue='country', data=df]
    
    3, các hàng nhân các cột phải bằng số lượng quốc gia duy nhất hoặc +1 nếu có một số lẻ.
max_value = df.value.max[] + 100  # + 100 to add padding at the top of the plot; 100 is an arbitrary value and can be removed
for i, country in enumerate[df.country.unique[], 1]:  # iterate through each unique country
    data = df[df.country == country]  # filter by country
    plt.subplot[1, 2, i]  # rows, columns, i: plot index beginning at 1
    sns.barplot[x='year', y='value', data=data]
    plt.ylim[0, max_value]  # set y-lim with max of the value column; makes it easier to compare countries
    plt.title[country]

Tôi có một bộ thông tin và tôi muốn lấy 10 giá trị hàng đầu câu mọi thứ khác. Để giải thích, tôi muốn thêm tất cả các giá trị không nằm trong top 10 cùng nhau và thêm chúng để nói một biểu đồ hình tròn được dán nhãn là "những người khác" cùng với top 10. Hiện tại tôi có mã sau đây là X là DataFrame của tôi:

temp = X.SOME_IDENTIFIER.value_counts[]
temp.head[10].plot[kind='pie']

Điều này giúp tôi có một biểu đồ hình tròn chỉ trong top 10 nhưng tôi không muốn loại bỏ tất cả các giá trị khác từ DataFrame. Tôi muốn thêm chúng như một biến thứ mười một trên biểu đồ nhưng không chắc chắn làm thế nào để làm điều này. Bất kỳ giúp đỡ hoặc tư vấn được đánh giá cao.

Đã hỏi ngày 23 tháng 3 năm 2015 lúc 19:47Mar 23, 2015 at 19:47

Brant Mullinixbrant MullinixBrant Mullinix

1371 Huy hiệu vàng2 Huy hiệu bạc13 Huy hiệu đồng1 gold badge2 silver badges13 bronze badges

2

Gán kết quả cho DataFrame mới [TEMP2], sau đó chèn một bản ghi mới tổng hợp bất kỳ mục còn lại nào trong danh sách. Nó cũng xác định số lượng các mục duy nhất còn lại.

temp = X.SOME_IDENTIFIER.value_counts[]
temp2 = temp.head[10]
if len[temp] > 10:
    temp2['remaining {0} items'.format[len[temp] - 10]] = sum[temp[10:]]
temp2.plot[kind='pie']

Đã trả lời ngày 23 tháng 3 năm 2015 lúc 20:15Mar 23, 2015 at 20:15

AlexanderalexanderAlexander

99.1K27 Huy hiệu vàng186 Huy hiệu bạc185 Huy hiệu đồng27 gold badges186 silver badges185 bronze badges

4

Sử dụng gấu trúc:

# Sort the DataFrame in descending order; will create a Series
s_temp = X.SOME_IDENTIFIER.sort_values[ascending=False]

# Count how many rows are not in the top ten
not_top_ten = len[s_temp] - 10
    
# Sum the values not in the top ten
not_top_ten_sum = s_temp.tail[not_top_ten].sum[]

# Get the top ten values
s_top = s_temp.head[10]

# Append the sum of not-top-ten values to the Series
s_top[10] = not_top_ten_sum

# Plot pie chart
_ = s_top.plot.pie[]

# Show plot
plt.show[]

Đã trả lời ngày 15 tháng 7 năm 2020 lúc 22:25Jul 15, 2020 at 22:25

Đây là cách tôi tiếp cận vấn đề:

temp = X.SOME_IDENTIFIER.value_counts[].sort_values[ascending=False].head[10]
df=pd.DataFrame[{'XX':temp.index,'Y':temp.values}]
df=df.append[{'XX'='Other','Y'=X.SOME_IDENTIFIER.value_counts[].sort_values[ascending=False].iloc[10:].sum[]}]
df.set_index['XX'].plot[kind='pie',y='Y']

Giải thích ----> Tôi đã lưu trữ 10 giá trị hàng đầu trong một khung dữ liệu và tính toán thủ công tổng của phần còn lại của các giá trị từ chuỗi và nối thêm kết quả trong dataFrame với tên khác và vẽ piechart cho dữ liệu đó. Bạn sẽ nhận được kết quả hy vọng.

Đã trả lời ngày 8 tháng 7 lúc 12:07Jul 8 at 12:07

Tôi cần trợ giúp vẽ một số giá trị phân loại và số trong Python. Mã được đưa ra dưới đây:

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




%%time  df=pd.read_csv['train_feature_store.csv']
df.info
df.head
df.columns



plt.figure[figsize=[20,6]] 
sns.countplot[x='Store', data=df] 
plt.show[]



Size = df[['Size','Store']].groupby[['Store'], as_index=False].sum[] Size.sort_values[by=['Size'],ascending=False].head[10]

Tuy nhiên, kích thước dữ liệu rất lớn [dữ liệu lớn] đến nỗi tôi thậm chí không thể tạo ra âm mưu có ý nghĩa trong Python. Về cơ bản, tôi chỉ muốn lấy 5 giá trị hàng đầu hoặc 10 giá trị hàng đầu trong Python và tạo ra một âm mưu như được đưa ra dưới đây:-

//i.stack.imgur.com/phcai.png

Trong một nỗ lực để vẽ đồ thị, tôi đang cố gắng đưa mã dưới đây vào một khung dữ liệu và vẽ nó, nhưng không thể làm như vậy. Bất cứ ai có thể giúp tôi trong việc này:-

Size = df[['Size','Store']].groupby[['Store'], as_index=False].sum[] Size.sort_values[by=['Size'],ascending=False].head[10]

Dưới đây, là một liên kết đến bộ dữ liệu mẫu. Tuy nhiên, bộ dữ liệu là một đại diện, trong bản gốc mà tôi đang cố gắng thực hiện EDA, nơi có khoảng 3 nghìn cửa hàng độc đáo và 60 nghìn hàng dữ liệu. XIN VUI LÒNG GIÚP ĐỠ! Cảm ơn!

//drive.google.com/file/d/1j77xvl1mzuapnz53b89lzodsu1zsbvej/view?usp=sharing

Những gì tôi đã thử:

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




%%time  df=pd.read_csv['train_feature_store.csv']
df.info
df.head
df.columns



plt.figure[figsize=[20,6]] 
sns.countplot[x='Store', data=df] 
plt.show[]



Size = df[['Size','Store']].groupby[['Store'], as_index=False].sum[] Size.sort_values[by=['Size'],ascending=False].head[10]

Làm thế nào để bạn tìm thấy 10 giá trị hàng đầu trong Python?

Làm thế nào để có được 10 giá trị cao nhất hoặc thấp nhất trong gấu trúc..

Bước 1: Tạo DataFrame mẫu. ....

Bước 2: Nhận 10 giá trị lớn nhất/thấp nhất cho cột đơn. ....

Bước 3: Nhận 10 giá trị lớn nhất/thấp nhất - trùng lặp. ....

Bước 4: Nhận các giá trị n trên cùng trong nhiều cột. ....

Bước 5: Làm thế nào để công việc nsmallest và nlarest ..

Làm thế nào để bạn nhận được 5 giá trị hàng đầu trong Python?

Mô -đun Pandas của Python cung cấp các cách dễ dàng để thực hiện tổng hợp và tính toán số liệu. Tìm kiếm 5 giá trị tối đa hàng đầu cho mỗi nhóm cũng có thể đạt được trong khi thực hiện nhóm theo. Hàm hữu ích cho việc tìm kiếm 5 giá trị tối đa hàng đầu là nlargest [].nlargest[].

Làm thế nào để bạn vẽ các giá trị dữ liệu trong Python?

Dữ liệu cũng có thể được vẽ bằng cách gọi trực tiếp chức năng cốt truyện matplotlib ...

Lệnh là plt.plot [x, y].

Màu sắc và định dạng của các điểm đánh dấu cũng có thể được chỉ định là một đối số tùy chọn bổ sung, ví dụ: B- là một đường màu xanh lam, G-- là một đường nét đứt màu xanh lá cây ..

Làm thế nào để bạn vẽ một quầy trong Python?

Phương pháp Countplot [] được sử dụng để hiển thị số lượng quan sát trong mỗi thùng phân loại bằng các thanh.Các tham số: Phương pháp này đang chấp nhận các tham số sau được mô tả dưới đây: X, Y: Tham số này lấy tên của các biến trong dữ liệu hoặc dữ liệu vector, tùy chọn, đầu vào để vẽ dữ liệu dạng dài. is used to Show the counts of observations in each categorical bin using bars. Parameters : This method is accepting the following parameters that are described below: x, y: This parameter take names of variables in data or vector data, optional, Inputs for plotting long-form data.

Bài Viết Liên Quan

Chủ Đề