特定的字符串切片

时间:2018-04-09 08:56:41

标签: python arrays string slice

我有一个大字符串数组,我将其存储为名为np_base的nparray:np.shape(np_base) Out[32]: (65000000, 1)

我打算做的是垂直切片数组,以便将其分解为多个列,以后我将以独立的方式存储,所以我试图遍历行索引并附加:

for i in range(65000000): INCDN.append(np.base[i, 0][0:5]) 但这会导致内存错误。

有没有人可以帮我解决这个问题,我一直在搜索切片字符串数组的替代方法。

谢谢,

1 个答案:

答案 0 :(得分:0)

将函数应用于numpy数组的方法有很多,其中一种方法如下:

np_truncated = np.vectorize(lambda x: x[:5])(np_base)

在大多数情况下,迭代地附加列表的方法通常是最少的解决方案。

或者,如果您打算使用多个列,则可能需要使用pandas

import pandas as pd    
df = pd.DataFrame(np_base, columns=["Raw"])
truncated = df.Raw.str.slice(0,5)