目前自学Python并遇到一些问题。我的挑战要求我计算excel电子表格中一列中唯一值的数量,其中的行没有缺失值。以下是我到目前为止所做的,但我似乎无法让它发挥作用:
import xlrd
import pandas as pd
workbook = xlrd.open_workbook("*name of excel spreadsheet*")
worksheet = workbook.sheet_by_name("*name of specific sheet*")
pd.value_counts(df.*name of specific column*)
s = pd.value_counts(df.*name of specific column*)
s1 = pd.Series({'nunique': len(s), 'unique values': s.index.tolist()})
s.append(s1)
print(s)
提前感谢您的帮助。
使用内置的在列中查找唯一的:
与您分享一个例子:
import pandas as pd
df=pd.DataFrame(columns=["a","b"])
df["a"]=[1,3,3,3,4]
df["b"]=[1,2,2,3,4]
print(df["a"].unique())
将给出以下结果:
[1 3 4]
因此,如果你愿意,你可以将其存储为变量的列表,使用:
l_of_unique_vals=df["a"].unique()
找到它的长度或做任何你喜欢的
df = pd.read_excel("nameoffile.xlsx", sheet_name=name_of_sheet_you_are_loading)
#in the line above we are reading the file in a pandas dataframe and giving it a name df
df["column you want to find vals from"].unique()
首先可以使用Pandasread_exel
,然后使用unique
,如@Inder建议的。
import pandas as pd
df = pd.read_exel('name_of_your_file.xlsx')
print(df['columns'].unique())
点击此处查看更多信息。