Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python在执行While循环_Python_Pandas - Fatal编程技术网

Python在执行While循环

Python在执行While循环,python,pandas,Python,Pandas,我在数据帧和while循环方面遇到一些问题: A B 5 10 5 10 10 5 我正在尝试建立一个while循环: while (Column A < Column B): Column A = Column A + (Column B / 2) Column B = Column B / 2 while(A列

我在数据帧和while循环方面遇到一些问题:

A     B
5     10
5     10
10    5
我正在尝试建立一个while循环:

while (Column A < Column B):
    Column A = Column A + (Column B / 2)
    Column B = Column B / 2
while(A列

有什么办法吗。

试试下面的方法。下次试着解决它,而不是直接问它。你会学到更多:)谢谢

将熊猫作为pd导入
d={'A':[5,5,10],'B':[10,10,5]}
df=pd.DataFrame(数据=d)
df
出[]:
A B
0   5  10
1   5  10
2  10   5
行=df.shape[0]
i=0
当i
您可以将此计算矢量化以避免显式循环:

mask = df['A'] < df['B']

df.loc[mask, 'A'] = df['A'] + df['B'] / 2
df.loc[mask, 'B'] = df['B'] / 2

print(df)

#       A    B
# 0  10.0  5.0
# 1  10.0  5.0
# 2  10.0  5.0
mask=df['A']
首先尝试编写一些代码来解决这个问题,然后将代码发布到这里,以便我们对其进行评论,这将是一个好主意。当您在发布时,预期的答案是:)
mask = df['A'] < df['B']

df.loc[mask, 'A'] = df['A'] + df['B'] / 2
df.loc[mask, 'B'] = df['B'] / 2

print(df)

#       A    B
# 0  10.0  5.0
# 1  10.0  5.0
# 2  10.0  5.0