亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

For循環數據框:如何打印索引名稱而不是數字 i 和 j?

For循環數據框:如何打印索引名稱而不是數字 i 和 j?

烙印99 2024-01-04 16:23:02
我有一個數據框:行索引都是人名。列索引是對 7 個不同問題的所有評分 1-10。因此,數據框由 1-10 的所有數字組成:每個人(行)的每個問題(列)的數字。它看起來像這樣:        Q1.    Q2.    Q3.   Q4.   Q5.   Q6.   Q7.     Lotte   4      6      4     5     8     6      5Lara    5      7      8     7     9     7      6Linda   7      7      8     8     7     8      6Tom     9      8      7     9     6     9      7Jantje  9      9      9     10    7     10     8然后我想創建一個 for 循環來遍歷這些數據(稱為“分數”),檢查每個數字。如果數字<5,我想打?。骸皩τ凇癚UESTION”的“NAME”,它低于5”。所以,fe:對于樂天來說,第一季度它低于 5。我現在有以下代碼:for i in range(len(Score.columns)):    for j in range(len(Score)):        if Score.iloc[j,i] < 5:            print ("Lower for %d" %i)這僅打印列號,但我想打印列和行,但由索引命名。誰能幫忙打印這個嗎?
查看完整描述

1 回答

?
RISEBY

TA貢獻1856條經驗 獲得超5個贊

這是相當簡單的


您可以使用數據框方法iterrows來迭代您的行,然后處理單行以提取您的知識。為了完整起見,我生成了一個示例數據框來演示該行為:


import pandas as pd

import random

# here I am generating my dataframe similiar to yours

list_of_dicts = [{'Q'+str(i)+'.':random.randrange(10) for i in range(1, 8)} for j in range(5)]

index = ['Lotte', 'Lara', 'Linda', 'Tom', 'jantje']


df = pd.DataFrame(list_of_dicts)

df.index = index


# here you can see the df structure 

print(df)


# here the algorithm

for row in df.iterrows():

  name = row[0]

  print("For " + name)

  for key in row[1].keys():

    if row[1][key] < 5:

      print("for {} it is Lower than 5".format(key))

我的數據框:


        Q1.  Q2.  Q3.  Q4.  Q5.  Q6.  Q7.

Lotte     6    8    5    8    8    1    6

Lara      1    7    0    7    5    5    1

Linda     6    6    0    3    9    7    4

Tom       5    8    2    5    3    8    3

jantje    5    5    9    9    5    0    3

我的輸出:


For Lotte

for Q6. it is Lower than 5

For Lara

for Q1. it is Lower than 5

for Q3. it is Lower than 5

for Q7. it is Lower than 5

For Linda

for Q3. it is Lower than 5

for Q4. it is Lower than 5

for Q7. it is Lower than 5

For Tom

for Q3. it is Lower than 5

for Q5. it is Lower than 5

for Q7. it is Lower than 5

For jantje

for Q6. it is Lower than 5

for Q7. it is Lower than 5


查看完整回答
反對 回復 2024-01-04
  • 1 回答
  • 0 關注
  • 278 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號