簡體   English   中英

計算python中特定列的數字出現次數

[英]Count occurrences of number from specific column in python

我正在嘗試在excel中做一個COUNTIF()函數的等效項。 我堅持如何告訴.count()函數從excel中的特定列讀取。

我有

df = pd.read_csv('testdata.csv')    
df.count('1') 

但這是行不通的,即使這樣做還不夠具體。 我想我可能必須使用read_csv來分別讀取特定的列。

例:

Column name
4
4
3
2
4
1

該函數將輸出一個“ 1”,然后我可以再次運行它,發現存在三個“ 4”的答案。 等等

我懂了! 謝謝

我用了:

print (df.col.value_counts().loc['x']

如果所有其他方法都失敗了,為什么不嘗試這樣的事情呢?

import numpy as np
import pandas
import matplotlib.pyplot as plt

df = pandas.DataFrame(data=np.random.randint(0, 100, size=100), columns=["col1"])

counters = {}
for i in range(len(df)):
    if df.iloc[i]["col1"] in counters:
        counters[df.iloc[i]["col1"]] += 1
    else:
        counters[df.iloc[i]["col1"]] = 1

print(counters)
plt.bar(counters.keys(), counters.values())
plt.show()

這是您可以嘗試的簡單“計數”配方的示例:

import pandas as pd

def countif(rng, criteria):
    return rng.eq(criteria).sum()

使用范例

df = pd.DataFrame({'column1': [4,4,3,2,4,1],
                   'column2': [1,2,3,4,5,6]})
countif(df['column1'], 1)

暫無
暫無

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

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