Python 3.x 如何剪切行的一部分';在Python中只保留前3位数字

Python 3.x 如何剪切行的一部分';在Python中只保留前3位数字,python-3.x,pandas,dataframe,data-science,Python 3.x,Pandas,Dataframe,Data Science,我在上面提供的数据框中有一列。它可以有任意数量的行,这取决于正在处理的数据。它是许多列中的一列,但前三个数字与另一列数据相匹配。我需要切断前3个数字之后的所有内容,以便根据类似的值将其附加到另一个数据帧。关于如何只获取前3个数字,并删除剩余的8个值,有什么想法吗 到目前为止,我已经将整个列作为一个系列和一个numpy.array单独列出,以便尝试将其转换为str而不是对象。 我知道这让我离答案越来越近了,但我似乎不知道如何去掉不必要的值 0 546/001441 1 540/0014

我在上面提供的数据框中有一列。它可以有任意数量的行,这取决于正在处理的数据。它是许多列中的一列,但前三个数字与另一列数据相匹配。我需要切断前3个数字之后的所有内容,以便根据类似的值将其附加到另一个数据帧。关于如何只获取前3个数字,并删除剩余的8个值,有什么想法吗

到目前为止,我已经将整个列作为一个系列和一个numpy.array单独列出,以便尝试将其转换为str而不是对象。 我知道这让我离答案越来越近了,但我似乎不知道如何去掉不必要的值

0    546/001441
1    540/001495
2    544/000796
3    544/000797
4    544/000798

这会在我需要的地方剪切字符串,但我不知道如何对整个列执行此操作。

假设列的名称为
col
,您可以

 testcut=dfwhynot[0][:3]

然后得到每个
col1
组的最小元素

  col1    col2
0  546  001441
1  540  001495
2  544  000796
3  544  000797
4  544  000798
导致

df.groupby('col1').min().reset_index()

您是否尝试过pandas的
join
ing或
merge
ing?在我可以将数据加入或合并到另一个数据帧之前,我需要对其进行过滤。为了将其过滤到我的需要,我只需要上面数据中的前3个值。我计划在过滤后将该列与另一列交换,然后使用.join将其追加。您可以使用
df['series'].str[:3]
谢谢您,效果非常好!我有一种感觉,这将是简单的,我只是无法确定下来。谢谢你的问题!我刚刚对它做了一点修改,所以它都是在一个数据帧内完成的。
df.groupby('col1').min().reset_index()
  col1    col2
0  540  001495
1  544  000796
2  546  001441