3

我是熊猫新手。

我想向熊猫数据框添加一个新列,df并将“开始”分配给每个奇数行,将“停止”分配给每个偶数行。

但是,当我这样做时df.iloc[1::2, :] = "Start",我会在每个第二个位置插入一个新行,每列中都有“开始”字符串。

我知道在这种情况下,熊猫不知道将“开始”字符串放在哪一列。

但是,我无法弄清楚正确的语法。

4

1 回答 1

5

这是我的解决方案 - 还没有弄清楚优化部分,但给定一个相当大的数据集,这应该可以很好地处理它 -

import pandas as pd

df = pd.read_csv('temp.csv')

df['New_Col'] = "Start"

df.loc[1::2,"New_Col"] = "Stop"

print df['New_Col']

输出 -

0      Start
1       Stop
2      Start
3       Stop
4      Start
5       Stop
6      Start
7       Stop
8      Start
9       Stop
10     Start
11      Stop
12     Start
13      Stop
14     Start
15      Stop
16     Start
17      Stop
18     Start
19      Stop
20     Start
21      Stop
22     Start
23      Stop
24     Start
25      Stop
26     Start
27      Stop
28     Start
29      Stop
       ...  
116    Start
117     Stop
118    Start
119     Stop
120    Start
121     Stop
122    Start
123     Stop
124    Start
125     Stop
126    Start
127     Stop
128    Start
129     Stop
130    Start
131     Stop
132    Start
133     Stop
134    Start
135     Stop
136    Start
137     Stop
138    Start
139     Stop
140    Start
141     Stop
142    Start
143     Stop
144    Start
145     Stop
Name: New_Col, dtype: object
于 2016-11-28T04:47:13.993 回答