Python 跨两个文件使用numpy组合数据
在我的问题中,有两个文件,我想将它们合并成一个数据集—两个文件。第一个文件有一个隐式行号,在第二个文件中作为ident引用。简妮是1号,茉莉是2号,朱迪思是3号 姓名:Python 跨两个文件使用numpy组合数据,python,numpy,Python,Numpy,在我的问题中,有两个文件,我想将它们合并成一个数据集—两个文件。第一个文件有一个隐式行号,在第二个文件中作为ident引用。简妮是1号,茉莉是2号,朱迪思是3号 姓名: Name Address Janine Unicorn Lane Jasmine Sparkles Street Judith Rainbow Avenue 电话号码: Number Ident 123 1 893 1 345 2 746 3 我如何结合这两个表来获得每个地址的电话号码?我
Name Address
Janine Unicorn Lane
Jasmine Sparkles Street
Judith Rainbow Avenue
电话号码:
Number Ident
123 1
893 1
345 2
746 3
我如何结合这两个表来获得每个地址的电话号码?我想做的是:
data[Adress='Unicorn Lane']['Number'].mean()
好的,这个例子可能不太好。但说明了我需要什么。您可能可以使用结构化阵列管理某些内容:
- 例如,使用
从两个文件创建两个结构化数组np.genfromtxt
和名称
。不要忘记使用数字
(让dtype=None
猜测您的数据类型)和np.genfromtxt
(字段名应从第一列读取),可能使用names=True
分隔符=“\t”
您的
名称
将具有类似dtype([('Name','S7'),('address','S16'))
,您的数字
类似dtype([('Number','0
)。否则idx+1
也将为空,numbers['Ident'==idx+1
将计算为False
,在NumPy中,numbers[False]
相当于数字[0]
请解释这两个文件是如何连接的。Ident
是第一个文件的行号吗?听起来你想要一个RDBMS,不过可能会帮你剪切。Z是通过Ident和第一个文件的顺序连接的。我举个例子。你能再次帮我吗?打印数字吗[numbers['ident']==idx[0]+1]有效,并提供属于idx[0]的所有记录,但numbers[numbers['ident']==idx+1]只提供第一条记录。有什么建议吗?第二个问题中的idx
是什么(numbers[numbers['ident']==idx+1]
)?
(idx,) = np.nonzero(names['Adress']=="Unicorn Lane")
numbers[numbers['Ident'] == idx+1]