获取员工详细信息

时间:2020-06-22 04:28:28

标签: python excel pandas

我有一个Excel工作表,其中包含员工详细信息数据,例如(员工姓名,员工ID,电子邮件ID,名字,姓氏,位置,组,加入日期等)。 我有以下工作代码:

import pandas as pd
df = pd.read_excel (r'C:\\Users\\Kiran\\Desktop\\UserList.xlsx')
df = df[df['Emp Num'].isin(['X902', '342','983','X910'])]
df.to_excel("Output1.xlsx",index=False)

import os
file = "Output1.xlsx"
os.startfile(file)

但是问题是,当我运行此代码时,我仅获得(X910,X902)的员工详细信息,而没有获得员工ID(342,983)的详细信息。基本上使用该代码,我会获取所有以“ X”开头的员工详细信息,但不会获取以数字开头的员工ID的详细信息(例如:342,983,444,890等) 有人可以指导我怎么做吗?

3 个答案:

答案 0 :(得分:3)

也许检查“ Emp Num”列的单元格值是否设置为数字格式“ Text”。如果将它们设置为“常规”,则可以将它们解析为整数而不是字符串值。

You change it from here

答案 1 :(得分:1)

如果删除数字ID周围的引号,它将起作用,例如:

df = df[df['Emp Num'].isin(['X902', 342,983,'X910'])]

您还可以通过将Excel中Num Emp列的单元格类型设置为“文本”来避免这样做

答案 2 :(得分:1)

试试看!还要首先确保列名称与usecols中的名称匹配。

import pandas as pd
import numpy as np
file_loc = "UserList.xlsx"
df = pd.read_excel(file_loc, index_col=None, na_values=['NA'], usecols = "X902,342,983,X910")
df.to_excel("Output1.xlsx",index=False)