<p>好的,这是有效的,我测试了它:</p>
<pre><code>import pandas as pd
#----------------------------------------
# Prepare the data in df.
#----------------------------------------
from io import StringIO
TESTDATA = StringIO("""Index;column_of_interest
1;21678849
2;37464859
3;barbara
4;28394821
5;francis""")
df = pd.read_csv(TESTDATA, sep=";")
#----------------------------------------
# The actual code to solve the problem.
#----------------------------------------
def is_integer(x):
try:
int(x)
return True
except ValueError:
return False
print([is_integer(x) for x in df['column_of_interest']])
</code></pre>
<p>输出为</p>
<pre><code>[True, True, False, True, False]
</code></pre>
<p>当然,有些代码不适用于您,但我想要一个完整的工作示例,我(和其他人)可以实际测试。我想你可以从中挑选出你需要的东西</p>
<p>测试整数的代码取自<a href="https://stackoverflow.com/a/1267145/1629102">https://stackoverflow.com/a/1267145/1629102</a></p>
<p>最后是将数据添加为新列的代码:</p>
<pre><code>import pandas as pd
#----------------------------------------
# Prepare the data in df.
#----------------------------------------
from io import StringIO
TESTDATA = StringIO("""Index;column_of_interest
1;21678849
2;37464859
3;barbara
4;28394821
5;francis""")
df = pd.read_csv(TESTDATA, sep=";")
#----------------------------------------
# The actual code to solve the problem.
#----------------------------------------
def is_integer(x):
try:
int(x)
return True
except ValueError:
return False
is_integer_list = [is_integer(x) for x in df['column_of_interest']]
df["Is_integer"] = is_integer_list
print(df)
</code></pre>
<p>使用此输出:</p>
<pre><code> Index column_of_interest Is_integer
0 1 21678849 True
1 2 37464859 True
2 3 barbara False
3 4 28394821 True
4 5 francis False
</code></pre>