打电话的时候
df = pd.read_csv('somefile.csv')
Run Code Online (Sandbox Code Playgroud)
我明白了:
/Users/josh/anaconda/envs/py27/lib/python2.7/site-packages/pandas/io/parsers.py:1130:DtypeWarning:列(4,5,7,16)有混合类型.在导入时指定dtype选项或设置low_memory = False.
为什么该dtype选项与此相关low_memory,以及为什么会False帮助解决此问题?
我有一个标签分隔文件,其中包含10亿行(想象200列,而不是3列):
abc -0.123 0.6524 0.325
foo -0.9808 0.874 -0.2341
bar 0.23123 -0.123124 -0.1232
Run Code Online (Sandbox Code Playgroud)
我想创建一个字典,其中第一列中的字符串是键,其余是值.我一直在这样做,但它的计算成本很高:
import io
dictionary = {}
with io.open('bigfile', 'r') as fin:
for line in fin:
kv = line.strip().split()
k, v = kv[0], kv[1:]
dictionary[k] = list(map(float, v))
Run Code Online (Sandbox Code Playgroud)
我怎么能得到想要的字典?实际上,numpy数组比值的浮点数列表更合适.