我使用pandas来处理一些csv文件,但是我无法将结果存储在变量中并按原样打印出来。在
这是我的密码。在
df = pd.read_csv(MY_FILE.csv, index_col=False, header=0)
df2 = df[(df['Name'])]
# Trying to get the result of Name to the variable
n = df2['Name']
print(n)
我得到的结果是:
^{pr2}$我的问题:
是否可以只将“Jake”存储在变量“n”中,以便在需要时随时调用它?在
例:打印(n)
结果:Jake
这是我构建的代码
def name_search():
list_to_open = input("Which list to open: ") + ".csv"
directory = "C:\Users\Jake Wong\PycharmProjects\box" "\\" + list_to_open
if os.path.isfile(directory):
# Search for NAME
Name_id = input("Name to search for: ")
df = pd.read_csv(directory, index_col=False, header=0)
df2 = df[(df['Name'] == Name_id)]
# Defining the name to save the file as
n = df2['Name'].ix[1]
print(n)
这是csv文件中的内容
S/N,Name,Points,test1,test2,test3
s49,sing chun,5000,sc,90 sunrsie,4984365132
s49,Alice Suh,5000,jake,88 sunrsie,15641816
s1231,Alice Suhfds,5000,sw,54290 sunrsie,1561986153
s49,Jake Wong,5000,jake,88 sunrsie,15641816
问题是
n = df2['Name']
实际上是一个熊猫系列:如果您只需要这个值,可以使用
^{pr2}$values[0]
values是Pandas对象后面的底层数组,在本例中,它的长度是1,而您只需要获取第一个元素。在此外,CSV的格式不正确:仅将内容排成这样的列是不够的,您需要在列之间使用一致的分隔符(通常是逗号或制表符),这样解析器就可以知道一列何时结束,另一列何时开始。你能把你的csv改成这样吗?公司名称:
否则我们可以为您开发另一个解决方案,但我们可能会使用regex而不是pandas。在
相关问题 更多 >
编程相关推荐